Cod sursa(job #2014448)

Utilizator stefdascalescuStefan Dascalescu stefdascalescu Data 23 august 2017 17:49:34
Problema Restante Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include<bits/stdc++.h>
using namespace std;
ifstream f("restante.in");
ofstream g("restante.out");
int n,fr[27],sol;
char c1[17];
struct prm
{
    char q[40];
};
prm v[36002];
bool test(prm a, prm b)
{
    return strcmp(a.q, b.q)<0;
}
int main()
{
    f>>n;
    for(int i=1;i<=n;++i)
    {
        f>>c1;
        int l=strlen(c1);
        for(int j=0;j<l;++j)
            fr[c1[j]-'a']++;
        l=0;
        for(int j=0;j<=25;fr[j]=0,++j)
            for(int k=1;k<=fr[j];++k)
                v[i].q[l++]='a'+j;
    }
    sort(v+1,v+n+1,test);
    v[n+1].q[0]='0';
    for(int i=1;i<=n;++i)
        if(strcmp(v[i].q,v[i+1].q)==0)
            ++i;
        else
            ++sol;
    g<<sol;
    return 0;
}