Pagini recente » Cod sursa (job #40713) | Cod sursa (job #526873) | Cod sursa (job #848029) | Cod sursa (job #2467332) | Cod sursa (job #498246)
Cod sursa(job #498246)
#include<stdio.h>
#include<string.h>
int f1[1052],f2[1052],nr;
int n,m,l[1052],h[1052];
int gr1[1052],gr2[1052];
int main ()
{
int i,j,lim,rez;
freopen("balanta.in","r",stdin);
freopen("balanta.out","w",stdout);
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++)
{
l[i]=1;
h[i]=1;
}
for(i=1;i<=m;i++)
{
scanf("%d",&lim);
for(j=1;j<=lim;j++)
scanf("%d",&gr1[j]);
for(j=1;j<=lim;j++)
scanf("%d",&gr2[j]);
scanf("%d",&rez);
memset(f1,0,sizeof(f1));
memset(f2,0,sizeof(f2));
for(j=1;j<=lim;j++)
{
f1[gr1[j]]=1;
f2[gr2[j]]=1;
}
if(!rez)
for(j=1;j<=lim;j++)
{
l[gr1[j]]=0;
l[gr2[j]]=0;
h[gr1[j]]=0;
h[gr2[j]]=0;
}
else if(rez==1)
for(j=1;j<=n;j++)
{
l[j]=l[j]&f2[j];
h[j]=h[j]&f1[j];
}
else
for(j=1;j<=n;j++)
{
h[j]=h[j]&f2[j];
l[j]=l[j]&f1[j];
}
}
for(i=1;i<=n;i++)
nr+=l[i]+h[i];
if(nr!=1)
{
printf("0\n");
return 0;
}
for(i=1;i<=n;i++)
if(l[i])
printf("%d\n",i);
else
if(h[i])
printf("%d\n",i);
return 0;
}