Pagini recente » Cod sursa (job #1680458) | Cod sursa (job #2938683) | Cod sursa (job #1709799) | Cod sursa (job #168682) | Cod sursa (job #36779)
Cod sursa(job #36779)
#include<stdlib.h>
#include<fstream>
using namespace std;
fstream f,g;
long n,m,i,j,k,adev,c1,c2,fals1,fals2,x[1025],pos[1025],t,q;
int main(void)
{
f.open("balanta.in",ios::in);
g.open("balanta.out",ios::out);
f>>n>>m;
for(i=1;i<=n;i++)
x[i]=-1;
for(i=1;i<=m;i++)
{
f>>k;
for(j=1;j<=2*k;j++)
f>>pos[j];
f>>adev;
if(adev==0)
for(j=1;j<=2*k;j++)
x[pos[j]]=0;
if(adev==1)
{
for(j=1;j<=k;j++)
if(x[pos[j]]==-1)
x[pos[j]]=2;
else if(x[pos[j]]==1)
x[pos[j]]=0;
for(j=k+1;j<=2*k;j++)
if(x[pos[j]]==-1)
x[pos[j]]=1;
else if(x[pos[j]]==2)
x[pos[j]]=0;
}
if(adev==2)
{
for(j=k+1;j<=2*k;j++)
if(x[pos[j]]==-1)
x[pos[j]]=2;
else if(x[pos[j]]==1)
x[pos[j]]=0;
for(j=1;j<=k;j++)
if(x[pos[j]]==-1)
x[pos[j]]=1;
else if(x[pos[j]]==2)
x[pos[j]]=0;
}
if (adev!=0)
{
for (j=1;j<=n;j++)
{
q=1;
for (t=1;t<=2*k;t++)
if(j==pos[t]) q=0;
if(q) x[j]=0;
}
}
}
c1=0;
c2=0;
for(i=1;i<=n;i++)
{
if(x[i]==1)
{
c1=c1+1;
fals1=i;
}
if(x[i]==2)
{
c2=c2+1;
fals2=i;
}
}
q=1;
if ((c1==1)&&(c2==0))
{
g<<fals1;
q=0;
}
if ((c2==1)&&(c1==0))
{
g<<fals2;
q=0;
}
if(q)
g<<0;
f.close();
g.close();
return 0;
}