Cod sursa(job #175333)

Utilizator me_andyAvramescu Andrei me_andy Data 9 aprilie 2008 20:51:11
Problema Balanta Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.97 kb
#include<fstream.h>

 ifstream f("balanta.in");
 ofstream ge("balanta.out");
 int n,m,g[1500],u[1500],s[1500],d[1500],i,x,j,c,cont,cont2,x2,ok,k;
int main()
{
 f>>n;
 f>>m;
 for(i=1;i<=n;i++)
  g[i]=u[i]=1;
 for(k=1;k<=m;k++)
 {
  f>>x;
  for(j=1;j<=x;j++)
   f>>s[j];
  for(j=1;j<=x;j++)
   f>>d[j];
  f>>c;
  if(c==1)
  {
   for(i=1;i<=x;i++)
     g[d[i]]=0;
   for(i=1;i<=x;i++)
     u[s[i]]=0;
  }
  if(c==0)
  {
   for(i=1;i<=x;i++)
     g[d[i]]=0;
   for(i=1;i<=x;i++)
     g[s[i]]=0;
   for(i=1;i<=x;i++)
     u[d[i]]=0;
   for(i=1;i<=x;i++)
     u[s[i]]=0;
  }
  if(c==2)
  {
   for(i=1;i<=x;i++)
     g[s[i]]=0;
   for(i=1;i<=x;i++)
     u[d[i]]=0;
   }
 }
 cont=0;cont2=0;
 x=0;x2=0;
 for(i=1;i<=n;i++)
 {
  if(g[i]!=0)
  {
   cont++;
   x=i;
  }
  if(u[i]!=0)
  {
   cont2++;
   x2=i;
  }
 }           ok=0;
 if(cont2==1)
 {
  ge<<x2;ok=1;     }
 if(cont==1)
 {
  ge<<x;ok=1;
 }
 if(ok==0)
 ge<<0;
 return 0;
}