Cod sursa(job #173009)

Utilizator jupanu92Anonim jupanu92 Data 7 aprilie 2008 08:05:33
Problema Restante Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<stdio.h>

int main()
{
 freopen("restante.in","r",stdin);
 freopen("restante.out","w",stdout);
 int n,i,nr,aux,nrr[3600],j,q,k,ok,nrc;
 char c,a[3601][17];
 scanf("%d",&n);
 c=fgetc(stdin);
 for(i=1;i<=n;i++)
  {nr=0;

   c=fgetc(stdin);
   nr++;
   a[i][nr]=c;

   while(c!='\n')
     {c=fgetc(stdin);
      nr++;
      a[i][nr]=c;

      }
  nrr[i]=nr-1;
   }
 for(i=1;i<=n;i++)
  for(j=1;j<=nrr[i];j++)
   for(k=j+1;k<=nrr[i];k++)
      if(a[i][k]<a[i][j])
	 {aux=a[i][k];
	 a[i][k]=a[i][j];
	 a[i][j]=aux;
	 }

nrc=0;
for(i=1;i<n;i++)
  {for(j=i+1;j<=n;j++)
    {ok=0;
     if(a[j][1]==a[i][1])
       {for(k=1;k<=nrr[i];k++)
	{ok=0;
	 for(q=1;q<=nrr[j];q++)
	    if(a[i][k]==a[j][q]){ok=1;break;}
	 if(ok==0) break;
	 }
	}
       if(ok==1){nrr[j]=0; break;}
      }
    if(ok==1)nrr[i]=0;
    }
for(i=1;i<=n;i++)
  if(nrr[i]!=0) nrc++;


printf("%d",nrc);
 return 0;
}