UVa 156 - Ananagrams

来源:互联网 发布:情趣用品淘宝店简介 编辑:程序博客网 时间:2024/05/16 14:54

又是照着敲的,学习map了,但最后我改成直接用set储存了,省了重新排序的功夫了。



#include<iostream>#include<map>#include<string>#include<set>#include<algorithm>#include<vector>using namespace std;vector<string> word;string sort_set(const string& t) {    string cnt = t;    for(int i = 0; i < cnt.size(); i++)        cnt[i] = tolower(cnt[i]);    sort(cnt.begin(), cnt.end());    return cnt;}int main() {    string s;    map<string, int>cnt;    while(cin >> s) {        if(s == "#") break;        word.push_back(s);        string r = sort_set(s);        if(!cnt.count(r)) cnt[r] = 0;        cnt[r]++;    }    set<string>s1;    for(int i = 0; i < word.size(); i++)        if(cnt[sort_set(word[i])] == 1) s1.insert(word[i]);    for(set<string>::iterator it = s1.begin(); it != s1.end(); it++)        cout << * it << endl;}


0 0