Cod sursa(job #712250)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 13 martie 2012 10:54:01
Problema Amlei Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.59 kb
#include<cstdio>
#include<algorithm>
using namespace std;
int a,n,t,u,i,j,l,c[51],e[501][51],d[501][51],r,x,y,k,o,h[501],z[501],s;
int main()
{FILE *f=fopen("amlei.in","r"),*g=fopen("amlei.out","w");
while(!feof(f))
     {fscanf(f,"%d%d%d",&n,&t,&u);
     for(s=l=0,o=i=1;o<=t;i++)
           {fscanf(f,"%d",&c[i]),s+=c[i];
           if(i%n==0)
                   {sort(c+1,c+n+1);
                   for(y=k=1;k<=l&&y;k++)
                   if(s==z[k])
                         {for(r=j=1;j<=n;j++)
                         if(d[k][j]!=c[j])
                                 r=0;
                         if(r)
                                 y=0;}
                   if(y)
                         for(z[++l]=s,j=1;j<=n;j++)        
                                 d[l][j]=c[j];
                   o++,s=i=0;}}
     for(s=r=0,o=i=1;o<=u;i++)
           {fscanf(f,"%d",&c[i]),s+=c[i];
           if(i%n==0)
                   {sort(c+1,c+n+1);
                   for(y=k=1;k<=r&&y;k++)
                   if(s==h[k])
                         {for(a=j=1;j<=n&&a;j++)
                         if(e[k][j]!=c[j])
                                 a=0;
                         if(a)
                                 y=0;}
                   if(y)
                         for(h[++r]=s,j=1;j<=n;j++)        
                                 e[r][j]=c[j];
                   o++,s=i=0;}}
     if(feof(f))
           break;
     sort(z+1,z+l+1),sort(h+1,h+r+1);
     for(y=i=1;(i<=l||i<=r)&&y;i++)
     if(h[i]!=z[i])
           y=0;
     fprintf(g,"%s\n",y?"DA":"NU");}
return 0;}