Cod sursa(job #196813)
#include<stdio.h>
int l,r,k,x,A[2000],B[2000],u[2000],g[2000],n,m,i;
int main(){
FILE *f=fopen("balanta.in","r");
fscanf(f,"%d %d",&n,&m);
for(i=1;i<=n;i++){
u[i]=1;
g[i]=1;
}
int d=1;
for(l=1;l<=m;l++){
fscanf(f,"%d",&k);
//d++;
for(i=1;i<=k;i++){
fscanf(f,"%d",&x);
A[x]=1;
}
for(i=1;i<=k;i++){
fscanf(f,"%d",&x);
B[x]=1;
}
fscanf(f,"%d",&r);
if(r==0){
for(i=1;i<=n;i++){
if(A[i]==1){
u[i]=g[i]=0;
}
if(B[i]==1){
u[i]=g[i]=0;
}
}
}
if(r==1){
for(i=1;i<=n;i++){
if(u[i]==1&&A[i]==1);
else
u[i]=0;
if(g[i]==1&&B[i]==1);
else
g[i]=0;
}
}
if(r==2){
for(i=1;i<=n;i++){
if(g[i]==1&&A[i]==1);
else
g[i]=0;
if(u[i]==1&&B[i]==1);
else
u[i]=0;
}
}
for(i=1;i<=n;i++)
A[i]=B[i]=0;
}
fclose(f);
FILE *gg=fopen("balanta.out","w");
int nr=0,p=0;
for(i=1;i<=n;i++){
if(u[i]==1){
nr++;
p=i;
}
if(nr==2){
fprintf(gg,"%d\n",0);
return 0;
}
}
for(i=1;i<=n;i++){
if(g[i]==1){
nr++;
p=i;
}
if(nr==2){
fprintf(gg,"%d\n",0);
return 0;
}
}
fprintf(gg,"%d",p);
fclose(gg);
return 0;
}