Cod sursa(job #18300)

Utilizator mariusdrgdragus marius mariusdrg Data 18 februarie 2007 11:19:05
Problema Amlei Scor 100
Compilator cpp Status done
Runda preONI 2007, Runda 2, Clasa a 9-a si gimnaziu Marime 2.2 kb
#include<stdio.h>

const int maxn = 600;
typedef int sir[maxn];

int sol;
sir ap[maxn];
int i;
int j;
int n;
int m1;
sir ap2[maxn];
int m2;


int cmp(sir &a,sir &b)
{
        int i;
        for(i=1;i<=n;i++)
                if (a[i]!=b[i]) return 0;
        return 1;
}


int modul(int x)
{
        if (x<0) return x*(-1);
        return x;
}


int main()
{
        freopen("amlei.in","r",stdin);
        freopen("amlei.out","w",stdout);
        while(!feof(stdin))
        {
                int x;
                scanf("%d %d %d",&n,&m1,&m2);
                sol=0;
                for(i=1;i<=m1;i++)
                {
                        for(j=1;j<=n;j++)
                        {
                                scanf(" %d ",&x);
                                if (x>0) ap[i][modul(x)]=1;
                                        else ap[i][modul(x)]=2;
                                        
                        }
                        
                }
                for(i=1;i<=m2;i++)
                {
                        for(j=1;j<=n;j++)
                        {
                                scanf(" %d ",&x);
                                if (x>0) ap2[i][modul(x)]=1;
                                        else ap2[i][modul(x)]=2;
                                        
                        }
                        
                }
                for(i=1;i<=m1;i++)
                {
                        for(j=1;j<=m2;j++)
                                if (cmp(ap[i],ap2[j]))
                                {
                                        sol++;
                                        break;
                                }
                }
                for(j=1;j<=m2;j++)
                {
                        for(i=1;i<=m1;i++)
                                if (cmp(ap[i],ap2[j]))
                                {
                                        sol++;
                                        break;
                                }
                }
                if (sol==m1+m2)printf("DA\n");
                        else printf("NU\n");
        }


        return 0;
}