UVa156

来源:互联网 发布:js null的valueof 编辑:程序博客网 时间:2024/05/16 17:49
/*
对于每一个输入的字符串s做归一化得到字符串no
<no,s>作为键值对构建字典,如果当前字符串s归一化之后的no已经出现过,那么就把dic[no]赋值为空字符串
然后把dic中所有值不为空的值都放在strs中,排序输出即可
*/
#include <algorithm>
#include <iostream>
#include <cstdlib>
#include <cstring>
#include <cstdio>
#include <cmath>
#include<string>
#include<strstream>
#include<strstream>
#include <sstream>
#include<vector>
#include<set>
#include<map>
using namespace std;
string norm(string s){
    string ans=s;
    for(auto &e:ans)e=tolower(e);
    sort(ans.begin(),ans.end());
    return ans;
}
vector<string>strs;
map<string,string>dic;
int main()
{
    string s,no;
    while(cin>>s&&s!="#"){
        no=norm(s);
        dic[no]=dic.find(no)==dic.end()?s:"";
    }
    for(auto &p:dic)if(!(p.second).empty())strs.push_back(p.second);
    sort(strs.begin(),strs.end());
    for(auto &p:strs)cout<<p<<endl;
    return 0;
}
原创粉丝点击