Pagini recente » Cod sursa (job #240557) | Cod sursa (job #40338) | Cod sursa (job #2636222) | Cod sursa (job #3137636) | Cod sursa (job #1313644)
#include <stdio.h>
#define MAXN 1024
char mma[MAXN], mmi[MAXN], a[MAXN], b[MAXN];
int main(){
FILE *in = fopen("balanta.in", "r");
int n, m, i, j, k, x;
fscanf(in, "%d%d", &n, &m);
for(i = 0; i < m; i++){
fscanf(in, "%d", &k);
for(j = 0; j < n; j++)
a[j] = b[j] = 0;
for(j = 0; j < k; j++){
fscanf(in, "%d", &x);
x--;
a[x] = 1;
}
for(j = 0; j < k; j++){
fscanf(in, "%d", &x);
x--;
b[x] = 1;
}
fscanf(in, "%d", &x);
switch(x){
case 0:
for(j = 0; j < n; j++){
if(a[j])
mma[j] = mmi[j] = 1;
if(b[j])
mma[j] = mmi[j] = 1;
}
break;
case 1:
for(j = 0; j < n; j++){
if(!a[j])
mma[j] = 1;
if(!b[j])
mmi[j] = 1;
}
break;
case 2:
for(j = 0; j < n; j++){
if(!a[j])
mmi[j] = 1;
if(!b[j])
mma[j] = 1;
}
break;
}
}
fclose(in);
int a = 0, b = 0, rez = -1;
for(i = 0; i < n; i++){
if(!mmi[i]){
a++;
if(rez == -1)
rez = i + 1;
}
if(!mma[i]){
b++;
if(rez == -1)
rez = i + 1;
}
}
FILE *out = fopen("balanta.out", "w");
if((a == 1 && b == 0) || (a == 0 && b == 1))
fprintf(out, "%d", rez);
else
fprintf(out, "0");
fclose(out);
return 0;
}