Pagini recente » Cod sursa (job #1653281) | Cod sursa (job #2837038) | Cod sursa (job #1295428) | Cod sursa (job #329718) | Cod sursa (job #1313628)
#include <stdio.h>
#define MAXN 1024
char bun[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])
bun[j] = a[j];
else if(b[j])
bun[j] = b[j];
}
break;
case 1:
for(j = 0; j < n; j++){
if(b[j])
bun[j] = b[j];
}
break;
case 2:
for(j = 0; j < n; j++){
if(a[j])
bun[j] = a[j];
}
break;
}
}
fclose(in);
int rez = -1;
for(i = 0; i < n; i++){
if(!bun[i]){
if(rez == -1)
rez = i;
else
rez = -2;
}
}
FILE *out = fopen("balanta.out", "w");
if(rez == -2 || rez == -1)
fprintf(out, "0");
else
fprintf(out, "%d", rez + 1);
return 0;
}