Cod sursa(job #717120)

Utilizator misinoonisim necula misino Data 19 martie 2012 18:01:58
Problema Restante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
FILE *f,*g;
int k,nr,i,n,x[36001];
char s[36001][20];
int cmp(int i,int j)
{if(strcmp(s[i],s[j])<0)
	return 1;
return 0;
}

int main()
{f=fopen("restante.in","r");
g=fopen("restante.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;++i)
{fscanf(f,"%s",&s[i]);
k=strlen(s[i]);
x[i]=i;
sort(s[i],s[i]+k);
}
sort(x+1,x+n+1,cmp);
if(strcmp(s[x[1]],s[x[2]]))
	++nr;
if(strcmp(s[x[n-1]],s[x[n]]))
	++nr;
for(i=2;i<n;++i)
	if(strcmp(s[x[i]],s[x[i-1]])&&strcmp(s[x[i]],s[x[i+1]]))
		++nr;
fprintf(g,"%d\n",nr);
fclose(f);
fclose(g);
return 0;
}