Cod sursa(job #404272)

Utilizator lalasCont de teste lalas Data 25 februarie 2010 23:31:03
Problema Restante Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include<cstdio>
#include<algorithm>
#include<string>
#include<vector>
#include<cstring>
using namespace std;

int i , j , n ,k;
vector <string> x;
string ss;
char s[20] , cnt;

inline bool cmp ( string a , string b ) {
	int i;
	for ( i = 0 ; i < max ( a.size() , b.size()) ; ++i)
		if ( a[i] != b[i] ) return 0;
return 1;
}


int main()
{
	freopen("restante.in","r",stdin);
	freopen("restante.out","w",stdout);
	
	scanf("%d\n",&n);
	
	for( i = 1 ; i <= n ; ++i ) {
		fgets(s,20,stdin);
		k = strlen(s);
		for ( j = 0 ; j < k ; ++j );
		sort( s,s + j - 1);
		x.push_back(s);
	}
	
	sort( x.begin() , x.end());
	
	for ( i = 1 ; i < n - 1; ++i ) 
		if ( cmp ( x[i] , x[i - 1] ) == 0  && cmp ( x[i] , x[i + 1] ) == 0) cnt++; 
	
	cnt += ( cmp ( x[0],x[1]) == 0 ) + ( cmp ( x[n - 1] , x[n - 2] ) == 0 );
	
	printf("%d\n",cnt);
		
return 0;
}