Pagini recente » Cod sursa (job #3227185) | Cod sursa (job #2354209) | Cod sursa (job #919455) | Cod sursa (job #2717520) | Cod sursa (job #34421)
Cod sursa(job #34421)
#include <cstdio>
using namespace std;
const char iname[] = "balanta.in";
const char oname[] = "balanta.out";
#define MAX_N 1025
int H[MAX_N], L[MAX_N];
int N, M;
int A[MAX_N], B[MAX_N];
int main(void)
{
freopen(iname, "r", stdin);
scanf("%d", & N);
for (int i = 1; i <= N; ++ i)
H[i] = L[i] = 1;
for (scanf("%d", & M); M --; ) {
int k;
scanf("%d", & k);
int num;
for (int i = 1; i <= k; ++ i)
scanf("%d", & num), A[num] = 1;
for (int i = 1; i <= k; ++ i)
scanf("%d", & num), B[num] = 1;
int res;
scanf("%d", & res);
if (res == 0) {
for (int i = 1; i <= N; ++ i) {
if (A[i] || B[i])
H[i] = L[i] = 0;
}
} else if (res == 1) {
for (int i = 1; i <= N; ++ i)
if (A[i] == 0) H[i] = 0;
for (int i = 1; i <= N; ++ i)
if (B[i] == 0) L[i] = 0;
} else {
for (int i = 1; i <= N; ++ i)
if (A[i] == 0) L[i] = 0;
for (int i = 1; i <= N; ++ i)
if (B[i] == 0) H[i] = 0;
}
for (int i = 1; i <= N; ++ i)
A[i] = B[i] = 0;
}
int h = 0;
for (int i = 1; i <= N; ++ i)
if (H[i]) h ++;
int l = 0;
for (int i = 1; i <= N; ++ i)
if (L[i]) l ++;
freopen(oname, "w", stdout);
if (h + l == 1) {
for (int i = 1; i <= N; ++ i)
if (H[i] || L[i])
printf("%d\n", i);
} else
printf("0\n");
return 0;
}