Pagini recente » Cod sursa (job #2869208) | Cod sursa (job #2878210) | Cod sursa (job #1528839) | Cod sursa (job #2783977) | Cod sursa (job #28688)
Cod sursa(job #28688)
#include <stdio.h>
#include <set>
int k1,n,m,k,i,j,x,a1[2000],a2[2000],b[2000],c[2000],l,l1;
int main()
{
freopen("balanta.in","r",stdin);
freopen("balanta.out","w",stdout);
scanf("%d %d",&n,&m);
for (i=1;i<=n;++i)
{
a1[i]=1;
a2[i]=1;
}
for (i=1;i<=m;++i)
{
scanf("%d ",&k);
for (j=1;j<=k;++j)
scanf("%d ",&b[j]);
for (j=1;j<=k;++j)
scanf("%d ",&c[j]);
scanf("%d",&x);
if (x==0)
{
for (j=1;j<=k;++j)
{
a1[b[j]]=0;
a2[c[j]]=0;
}
}
else
if (x==1)
{
for (j=1;j<=k;++j)
{
a1[b[j]]+=1;
a2[c[j]]+=1;
}
for (j=1;j<=n;++j)
{
if (a1[j]!=2) a1[j]=0;
if (a2[j]!=2) a2[j]=0;
}
for (j=1;j<=k;++j)
{
if (a1[b[j]]==2) a1[b[j]]=1;
if (a2[c[j]]==2) a2[c[j]]=1;
}
}
else
{
for (j=1;j<=k;++j)
{
a1[c[j]]+=1;
a2[b[j]]+=1;
}
for (j=1;j<=n;++j)
{
if (a1[j]!=2) a1[j]=0;
if (a2[j]!=2) a2[j]=0;
}
for (j=1;j<=k;++j)
{
if (a1[c[j]]==2) a1[c[j]]=1;
if (a2[b[j]]==2) a2[b[j]]=1;
}
}
}
k=0;l=0;
for (i=1;i<=n;++i)
{
if (a1[i]>1)
{
k++;
k1=i;
}
if (a2[i]>1)
{
l++;
l1=i;
}
}
if (k==1 && l==0) printf("%d\n",k1);
else
if (k==0 && l==1) printf("%d\n",l1);
else
printf("0\n");
return 0;
}