Pagini recente » Cod sursa (job #1971288) | Cod sursa (job #244683) | Cod sursa (job #427398) | Cod sursa (job #1190496) | Cod sursa (job #674658)
Cod sursa(job #674658)
#include<stdio.h>
int N,M,nr,sol,x,mult1[1234],mult2[1234],k,v[1234],l[1234];
int main()
{
freopen("balanta.in","r",stdin);
freopen("balanta.out","w",stdout);
scanf("%d%d",&N,&M);
for(int i=1;i<=M;++i)
{
scanf("%d",&k);
for(int j=1;j<=N;++j)
{
v[j]=1;
l[j]=1;
}
for(int j=1;j<=k;++j)
{
scanf("%d",&x);
v[x]=0;
}
for(int j=1;j<=k;++j)
{
scanf("%d",&x);
l[x]=0;
}
scanf("%d",&nr);
/*
for(int j=1;j<=N;++j)
{
printf("%d %d %d\n",v[j],l[j],j);
}
printf("\n\n");*/
if(nr==0)
for(int j=1;j<=N;++j)
{
if(!mult1[j]&&!v[j])
mult1[j]=1;
if(!mult1[j]&&!l[j])
mult1[j]=1;
if(!mult2[j]&&!l[j])
mult2[j]=1;
if(!mult2[j]&&!v[j])
mult2[j]=1;
}
if(nr==1)
for(int j=1;j<=N;++j)
{
if(!mult1[j])
if(v[j])
mult1[j]=1;
if(!mult2[j])
if(l[j])
mult2[j]=1;
}
if(nr==2)
for(int j=1;j<=N;++j)
{
if(!mult2[j])
if(v[j])
mult2[j]=v[j];
if(!mult1[j])
if(l[j])
mult1[j]=l[j];
}
}
for(int i=1;i<=N;++i)
{
if(mult1[i]==0&&sol)
{
printf("0\n");
return 0;
}
if(mult1[i]==0)
sol=i;
if(mult2[i]==0&&sol)
{
printf("0\n");
return 0;
}
if(mult2[i]==0)
sol=i;
}
if(sol)
printf("%d\n",sol);
else
printf("0\n");
return 0;
}