Pagini recente » Istoria paginii runda/ichb_10_casi | Cod sursa (job #2345747) | Cod sursa (job #1866829) | Cod sursa (job #2633861) | Cod sursa (job #987454)
Cod sursa(job #987454)
#include<iostream>
#include<fstream>
using namespace std;
#define NMAX 1025
int a[NMAX],b[NMAX],h[NMAX],l[NMAX],aux[NMAX];
int main ()
{
int n,m,k,i,j,r,st,dr;
ifstream f("balanta.in");
ofstream g("balanta.out");
f>>n>>m;
for(i=1;i<=n;i++) {
h[i]=1;
l[i]=1;
}
for(i=1;i<=m;i++) {
f>>k;
for(j=1;j<=k;j++)
f>>a[j];
for(j=1;j<=k;j++)
f>>b[j];
f>>r;
if(r==0) {
for(j=1;j<=k;j++) {
l[a[j]]=0;
l[b[j]]=0;
h[a[j]]=0;
h[b[j]]=0;
}
}
else if(r==1) {
for(j=1;j<=k;j++)
aux[a[j]]=1;
for(j=1;j<=n;j++)
h[j]=(h[j]&aux[j]);
for(j=1;j<=k;j++)
aux[a[j]]=0;
for(j=1;j<=k;j++)
aux[b[j]]=1;
for(j=1;j<=n;j++)
l[j]=(l[j]&aux[j]);
for(j=1;j<=k;j++)
aux[b[j]]=0;
}
else {
for(j=1;j<=k;j++)
aux[b[j]]=1;
for(j=1;j<=n;j++)
h[j]=(h[j]&aux[j]);
for(j=1;j<=k;j++)
aux[b[j]]=0;
for(j=1;j<=k;j++)
aux[a[j]]=1;
for(j=1;j<=n;j++)
l[j]=(l[j]&aux[j]);
for(j=1;j<=k;j++)
aux[a[j]]=0;
}
}
f.close();
st=0;
dr=0;
for(i=1;i<=n;i++) {
st=st+h[i];
dr=dr+l[i];
}
if(st+dr==1) {
for(i=1;i<=n;i++)
if(h[i]+l[i]==1)
break;
g<<i;
}
else g<<"0";
g.close();
return 0;
}