Cod sursa(job #462536)

Utilizator SpiderManSimoiu Robert SpiderMan Data 11 iunie 2010 13:42:35
Problema Amlei Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.42 kb
# include <cstdio>
# include <algorithm>
# include <cstring>

using namespace std;

#define MAXN 505

int N, A, B;
int a[MAXN],b[MAXN];

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

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

    while ( scanf("%d %d %d", &N, &A, &B) == 3 )
    {
        int ll = 0;

        memset(a,0,sizeof(a)), memset(b,0,sizeof(b));

        for (int i = 0; i < A; i++, ll++)
        {
            for (int j = 0; j < N; j++)
            {
                int l;
                scanf("%d", &l);
                if (l < 0)
                    a[ll] |= (1 << (-l - 1));
            }
            if ( i != A - 1 ) continue;
            sort(a, a + A);
            int aux =  unique( a, a + A ) - a;
           // ll -= ll - aux;
        }

        ll=0;
        for (int i = 0; i < B; i++, ll++)
        {
            for (int j = 0; j < N; j++)
            {
                int l;
                scanf("%d", &l);
                if (l < 0)
                    b[ll] |= (1 << (-l - 1));
            }
            if ( i != B - 1 ) continue;
            sort(b, b + B);
            int aux =  unique( b, b + B ) - b;
            //ll -= ll - aux;
            printf("%s\n", (comp(a,b,ll)) ? "DA" : "NU");
        }


    }
    return 0;
}