Pagini recente » Cod sursa (job #2973684) | Cod sursa (job #2749968) | Cod sursa (job #2238178) | Cod sursa (job #1075839) | Cod sursa (job #403734)
Cod sursa(job #403734)
#include<stdio.h>
#include<string.h>
#define DIM 1025
char a[DIM],b[DIM],u[DIM],g[DIM];
int n,m,j,i,x,k,r,t,fals,ok;
int main(){
FILE * f = fopen("balanta.in","r");
FILE * G = fopen("balanta.out","w");
fscanf(f,"%d%d",&n,&m);
for (i=1;i<=n;i++)
u[i] = g[i] = 1;
for(i=1;i<=m;i++){
fscanf(f,"%d",&k);
for(j=1;j<=2*k;j++){
fscanf(f,"%d",&x);
if(j<=k)
a[x]=1;
else
b[x]=1;
}
fscanf(f,"%d",&r);
if(r==0){
for(t=1;t<=n;t++){
if(a[t])
u[t]=g[t]=0;
if(b[t])
u[t]=g[t]=0;
}
}
else
if(r==1){
for(t=1;t<=n;t++){
if(a[t]&&g[t])
g[t]=1;
else
g[t]=0;
if(b[t]&&u[t])
u[t]=1;
else
u[t]=0;
}
}
else
for(t=1;t<=n;t++){
if(a[t]&&u[t])
u[t]=1;
else
u[t]=0;
if(b[t]&&g[t])
g[t]=1;
else
g[t]=0;
}
memset(a,0,sizeof(a));
memset(a,0,sizeof(b));
}
for(i=1;i<=n;i++){
if(u[i]){
if(ok){
fals=0;
break;
}
else{
fals=i;
ok=1;
}
}
}
for(i=1;i<=n;i++){
if(g[i])
if(ok){
fals=0;
break;
}
else{
fals=i;
ok=1;
}
}
fprintf(G,"%d",fals);
fclose(f);
fclose(G);
return 0;
}