Cod sursa(job #1298946)

Utilizator ovidiuz98Zamfir Ovidiu ovidiuz98 Data 23 decembrie 2014 13:00:42
Problema Restante Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#include <cstring>
#include <algorithm>
using namespace std;

ifstream fin("restante.in");
ofstream fout("restante.out");
char s[36003][20],l[36003],v[36003];
int n,i,j,nr,nrcuv;
int cmp(int x,int y){
    int i=0;
    while(s[x][i]==s[y][i])
        i++;
    return s[x][i]<s[y][i];
}
int main(){
    fin>>n;
    for(i=1;i<=n;i++){
        fin>>s[i];
        l[i]=strlen(s[i]);
        sort(s[i],s[i]+l[i]);
        v[i]=i;
    }
    sort(v+1,v+n+1,cmp);
    nr=1;
    for(i=1;i<=n;i++){
        if(strcmp(s[v[i]],s[v[i-1]])!=0 && strcmp(s[v[i]],s[v[i+1]])!=0)
            nrcuv++;
    }
    fout<<nrcuv;
    fin.close();fout.close();
    return 0;
}