Pagini recente » Cod sursa (job #997368) | Cod sursa (job #946996) | Cod sursa (job #2908132) | Cod sursa (job #1839978) | Cod sursa (job #18501)
Cod sursa(job #18501)
/*
*
*
Info-Arena 2.0 - preONI 2007 - Runda 2 - Amlei
*
*
*/
#include<stdio.h>
#include<string.h>
#define INPUT "amlei.in"
#define OUTPUT "amlei.out"
FILE *fin=fopen(INPUT, "r"),*fout=fopen(OUTPUT, "w");
int n,t,u,vec[501],vec2[501];
char matr[501][52],matr2[501][52];
void rezolvare();
int main()
{
rezolvare();
fclose(fin);
fclose(fout);
return 0;
}
void rezolvare()
{
fscanf(fin, "%d %d %d", &n, &t, &u);
int a,l;
int final;
while(!feof(fin))
{
final=1;
for(int i=1;i<=t;++i)
{
for(int j=1;j<=n;++j)
{
fscanf(fin, "%d", &a);
if(a<0)
matr[i][-a-1]='2';
else
matr[i][a-1]='1';
}
vec[i]=0;
}
for(int i=1;i<=u;++i)
{
for(int j=1;j<=n;++j)
{
fscanf(fin, "%d", &a);
if(a<0)
matr2[i][-a-1]='2';
else
matr2[i][a-1]='1';
}
vec2[i]=0;
}
l=0;
if(u>t)
{
for(int i=1;i<=u;++i)
{
l=0;
for(int j=1;j<=t&&!l;++j)
if(strcmp(matr2[i],matr[j])==0)
{
vec[j]=1;
vec2[i]=1;
l=1;
}
if(l==0)
break;
}
if(!l)
final=0;
l=0;
for(int i=1;i<=t&&!l;++i)
if(vec[i]==0)
l=1;
if(l)
final=0;
}
else
{
for(int i=1;i<=t;++i)
{
l=0;
for(int j=1;j<=u&&!l;++j)
if(strcmp(matr[i],matr2[j])==0)
{
vec[i]=1;
vec2[j]=1;
l=1;
}
if(l==0)
break;
}
if(!l)
final=0;
l=0;
for(int i=1;i<=u&&!l;++i)
if(vec2[i]==0)
l=1;
if(l)
final=0;
}
if(final)
fprintf(fout, "DA\n");
else
fprintf(fout, "NU\n");
fscanf(fin, "%d %d %d", &n, &t, &u);
}
}