Pagini recente » Cod sursa (job #3315752) | Borderou de evaluare (job #3318867) | Cod sursa (job #3306451) | Cod sursa (job #249236) | Cod sursa (job #3328082)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
int main() {
ifstream fin("restante.in");
ofstream fout("restante.out");
int N;
fin >> N;
char cuv[36005][20];
int freq[36005][26];
int aparitii[36005];
for(int i = 0; i < N; i++){
fin >> cuv[i];
for(int j = 0; j < 26; j++)
freq[i][j] = 0;
int len = strlen(cuv[i]);
for(int k = 0; k < len; k++)
freq[i][cuv[i][k] - 'a']++;
}
for(int i = 0; i < N; i++){
for(int j = i + 1; j < N; j++){
bool identic = true;
for(int k = 0; k < 26; k++){
if(freq[i][k] != freq[j][k]){
identic = false;
break;
}
}
if(identic){
aparitii[i]++;
aparitii[j]++;
}
}
}
int originale = 0;
for(int i = 0; i < N; i++){
if(aparitii[i] == 0)
originale++;
}
fout << originale;
return 0;
}