Cod sursa(job #127487)

Utilizator Matei14Popa-Matei Mihai Matei14 Data 24 ianuarie 2008 09:03:48
Problema Restante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char s[36005][18];
int n,m;
int comp1(const void *a,const void *b){
	return *((char*)a)-*((char*)b);
}
int comp2(const void*a,const void *b){
	char *aa=(char*)a,*bb=(char*)b;
	return strcmp(aa,bb);
}
int numarare(){
	int nr=0;
	if(strcmp(s[0],s[1]))
		++nr;
	if(strcmp(s[n-1],s[n-2]))
		++nr;
	for(int i=1;i<n-1;++i)
		if(strcmp(s[i],s[i-1]) && strcmp(s[i],s[i+1]))
			++nr;
	return nr;
}
int main(){
	freopen("restante.in","r",stdin);
	freopen("restante.out","w",stdout);
	scanf("%d",&n);
	for(int i=0;i<n;++i){
		scanf("%s\n",s[i]);
		m=strlen(s[i]);
		qsort(s[i],m,sizeof(s[i][0]),comp1);
	}
	qsort(s,n,sizeof(s[0]),comp2);
	printf("%d\n",numarare());
	return 0;
}