Cod sursa(job #26842)

Utilizator crawlerPuni Andrei Paul crawler Data 5 martie 2007 21:52:47
Problema Balanta Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.08 kb
#include <stdio.h>
#include <math.h>
#define fin "balanta.in"
#define fout "balanta.out"
#define FOR(i,a,b) for( i = (a) ; i <= (b) ; ++i )

int v[1025], st[513],dr[513];
int big[1025],small[1025];

int main()
 {
   freopen(fin,"r",stdin);
   freopen(fout,"w",stdout);

   int n,m,k,i,j,r;

   scanf("%i%i", &n,&m);

   FOR(i,1,n)
    small[i] = big[i] = 1;

   FOR(i,1,m)
    {
     scanf("%i",&k);
     
     FOR(j,1,k)
      scanf("%i",&st[j]);

     FOR(j,1,k)
      scanf("%i",&dr[j]);

     scanf("%i",&r);

     if(r == 0)
      FOR(j,1,k)
       {
        small[st[j]] = 0;
        small[dr[j]] = 0;
        big[st[j]] = 0;
        big[dr[j]] = 0;
       }
       
     if(r == 1)
      FOR(j,1,k)
       {
        small[st[j]] = 0;
        big[dr[j]] = 0;
       }
       
     if(r == 2)
      FOR(j,1,k)
       {
        small[dr[j]] = 0;
        big[st[j]] = 0;
       }
    }

   FOR(i,1,n)
    if(small[i]||big[i])
     {
      printf("%i\n", i);
      return 0;
     }
    
   printf("0\n");

   return 0;
 }

//by Crawler