Cod sursa(job #184646)

Utilizator Spike7d8Cristian Varvara Spike7d8 Data 24 aprilie 2008 00:09:05
Problema Restante Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#define _CRT_SECURE_NO_WARNINGS

#include <cstdio>
#include <cstdlib>
#include <cstring>


#define N 36864
#define M 32

char s[N][M];
char b[N];


int sortChar(const void *a, const void *b)
{
	return *((char *)a) - *((char *)b);
}


int sortString(const void *a, const void *b)
{
	return strcmp((char *)a, (char *)b);
}


int main()
{
	freopen("restante.in", "rt", stdin);
	freopen("restante.out", "wt", stdout);

	int n;
	scanf("%d\n", &n);

	for (int i = 0; i < n; i++)
	{
		scanf("%s\n", s[i]);
		qsort(s[i], strlen(s[i]), 1, sortChar);
	}

	qsort(s, n, M, sortString);

	for (int i = 0; i < n - 1; i++)
		if (!strcmp(s[i], s[i + 1]))
			b[i] = b[i + 1] = 1;

	int sol = 0;
	for (int i = 0; i < n; i++)
		if (b[i] == 0)
			sol++;

	printf("%d\n", sol);

	return 0;
}