Uva 156 Solution

#include<bits/stdc++.h>
using namespace std;
string anik(string s)
{
    int i;
    for(i=0;i<s.size();i++)
    {
        if(s[i] >= 'A' && s[i] <= 'Z')
            s[i] = s[i] + 32;
    }
    sort(s.begin(), s.end());
    return s;
}

int main()
{
    vector<string>v;
    map<string, int>a;
    string s;
    int i;
    while(cin >> s && s != "#")
    {
        v.push_back(s);
        a[anik(s)]++;
    }
    sort(v.begin(), v.end());
    for(i=0;i<v.size();i++)
    {
        if(a[anik(v[i])] == 1)
            cout << v[i] << endl;
    }

    return 0;
}

Comments