Cod sursa(job #1212240)

Utilizator breahnadavidBreahna David breahnadavid Data 24 iulie 2014 11:09:44
Problema Balanta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.09 kb
#include<iostream>
#include<fstream>
#define maxn 1030

using namespace std;

ifstream f("balanta.in");
ofstream g("balanta.out");

int st[maxn],dr[maxn],usor[maxn],greu[maxn],i,j,n,k,m,c;

int main()
{
f>>n>>m;

for(i=1;i<=n;i++)usor[i]=1;
for(i=1;i<=n;i++)greu[i]=1;

while(m>0)
        {
        f>>k;
        for(i=1;i<=k;i++)f>>j,st[j]=1;
        for(i=1;i<=k;i++)f>>j,dr[j]=1;
        f>>c;

        if(c==2){
                for(i=1;i<=n;i++)usor[i]*=st[i],st[i]=0;
                for(i=1;i<=n;i++)greu[i]*=dr[i],dr[i]=0;
                }
        else
        if(c==1){
                for(i=1;i<=n;i++)greu[i]*=st[i],st[i]=0;
                for(i=1;i<=n;i++)usor[i]*=dr[i],dr[i]=0;
                }
        else
                for(i=1;i<=n;i++)
                {
                if(st[i]||dr[i])usor[i]=0,greu[i]=0;
                st[i]=0;
                dr[i]=0;
                }


        m--;
        }


k=0;
for(i=1;i<=n;i++)
        {
        if(usor[i])k++,j=i;
        if(greu[i])k++,j=i;
        }
if(k==1)g<<j;
else
g<<0;

return 0;
}