Pagini recente » Cod sursa (job #3004465) | Cod sursa (job #2665328) | Cod sursa (job #1205697) | Cod sursa (job #2673471) | Cod sursa (job #3146532)
#include <fstream>
using namespace std;
int n, m, k, r, cnt;
int v[1025], dp[3][1025];
int main() {
ifstream fin("balanta.in");
ofstream fout("balanta.out");
fin >> n >> m;
for(int i = 1; i <= m; i++) {
fin >> k;
for(int j = 1; j <= 2 * k; j++) {
fin >> v[j];
}
fin >> r;
if(r != 0) {
cnt++;
}
switch(r) {
case 0:
for(int j = 1; j <= 2 * k; j++) {
dp[1][v[j]]--;
dp[2][v[j]]--;
}
break;
case 1:
for(int j = 1; j <= k; j++) {
dp[1][v[j]]++;
}
for(int j = k + 1; j <= 2 * k; j++) {
dp[2][v[j]]++;
}
break;
case 2:
for(int j = 1; j <= k; j++) {
dp[2][v[j]]++;
}
for(int j = k + 1; j <= 2 * k; j++) {
dp[1][v[j]]++;
}
break;
default:
break;
}
}
int nrRasp = 0, ans = 0;
for(int i = 1; i <= n; i++) {
dp[0][i] = (dp[1][i] == cnt || dp[2][i] == cnt);
if(dp[0][i]) {
nrRasp++;
ans = i;
}
}
fout << (nrRasp > 1 ? 0 : ans);
return 0;
}