Pagini recente » Cod sursa (job #74128) | Cod sursa (job #1334026) | Cod sursa (job #1754537) | Cod sursa (job #3178659) | Cod sursa (job #1669396)
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("balanta.in");
ofstream fout("balanta.out");
int n,m;
int H[1028],L[1028];
int a[1028],b[1028];
int main()
{
int i,j,k,t;
fin>>n>>m;
for(i = 1; i <= n;i++) H[i] = L[i] = 1;
for(j = 1; j <= m; j++)
{
fin>>k;
for(i = 1; i <= k; i++)fin>>a[i];
for(i = 1; i <= k; i++)fin>>b[i];
fin>>t;
if(t == 0)
{
for(i = 1; i <= k; i++)
H[a[i]] = H[b[i]] = L[a[i]] = L[b[i]] = 0;
}
else if(t == 1)
{
for(i = 1; i <= k; i++)
{
H[a[i]] *=-1;
L[b[i]] *=-1;
}
for(i = 1; i <= n; i++)
{
if(H[i] < 0) H[i]*=-1;
else H[i] = 0;
if(L[i] < 0) L[i]*=-1;
else L[i] = 0;
}
}
else
{
for(i = 1; i <= k; i++)
{
H[b[i]] *=-1;
L[a[i]] *=-1;
}
for(i = 1; i <= n; i++)
{
if(H[i] < 0) H[i]*=-1;
else H[i] = 0;
if(L[i] < 0) L[i]*=-1;
else L[i] = 0;
}
}
}
for(i = 1; i <= n; i++)
{
if(H[i]) H[0]++;
if(L[i]) L[0]++;
}
if((H[0]==1 && !L[0])||(!H[0] && L[0]==1))
{
for(i = 1; i <= n; i++)
if(H[i] || L[i])
{
fout<<i<<"\n";
break;
}
}
else fout<<"0\n";
fout.close();
return 0;
}