Cod sursa(job #125304)

Utilizator FlorinC1996Florin C FlorinC1996 Data 20 ianuarie 2008 12:28:17
Problema Restante Scor 50
Compilator cpp Status done
Runda preONI 2008, Runda 3, Clasa a 9-a Marime 0.83 kb
#include<stdio.h>
long c[36001][27];
char vd[36001];
int main()
{
long n,i,u,j,l,flag,suma=0;
char ch,sf;
freopen("restante.in","r",stdin);
freopen("restante.out","w",stdout);
scanf("%ld%c",&n,&ch);
for(i=1;i<=n;i++)
{
sf=scanf("%c",&ch);
while(ch!='\n' && ch!=' ' && sf!=EOF)
{
c[i][ch-96]++;
sf=scanf("%c",&ch);
}
}
for(i=1;i<n;i++)
	{
	for(j=i+1;j<=n;j++)
		{
			for(l=1;l<27;l++)
				{
				c[j][l]-=c[i][l];
				}
		 }

	for(j=i+1;j<=n;j++)
		{
			flag=1;
			if(vd[j]==0)
				{

                    for(l=1;l<=26;l++)
					{
					if(c[j][l]!=0)
						{
						flag=0;
						}
                     }

					if(flag==1)
						{
						vd[j]=1;
						vd[i]=1;
						}
                 }
		}
	}

for(i=1;i<=n;i++)
	{
	if(vd[i]==0)
        	suma++;
        }
printf("%ld",suma);
return 0;
}