Cod sursa(job #501536)

Utilizator zloteanu.adrianzloteanu adrian nichita zloteanu.adrian Data 15 noiembrie 2010 17:58:23
Problema Balanta Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <string.h>
using namespace std;
int n,k,m,a[1025],b[1025],sol,poz,c[1025],d[1025],e[1025];
int main()
{int i,j,ii;
ifstream q("balanta.in");
ofstream w("balanta.out");
q>>n>>k;
memset(e,-1,sizeof(e));
memset(d,-1,sizeof(d));
for(ii=0;ii<k;++ii)
  {q>>m;
  for(i=0;i<2*m;++i)
	q>>c[i];
  q>>j;
  if(j==0)
   memset(a,-1,sizeof(a)),memset(b,-1,sizeof(b));
  else
   memset(a,0,sizeof(a)),memset(b,0,sizeof(b));
  for(i=0;i<m;++i)
	{if(j==0)
	  a[c[i]]=a[c[i+m]]=b[c[i]]=b[c[i+m]]=0;
	if(j==1)
	 a[c[i]]=-1,b[c[i+m]]=-1;
	if(j==2)
     a[c[i+m]]=-1,b[c[i]]=-1;}
   for(i=0;i<n+1;++i)
     d[i]&=a[i],e[i]&=b[i];}
for(i=0;i<n+1;++i)
  if(e[i]||d[i])
   sol++,poz=i;
if(sol!=1)
 poz=0;
w<<poz;
return 0;}