Pagini recente » Profil Fr3ddy | Cod sursa (job #943984) | Felinare | Summer Challenge 2009, Runda 3 | Cod sursa (job #183744)
Cod sursa(job #183744)
#include<stdio.h>
int g[1025],u[1025],a[1025],b[1025],n,k,r,m;
int main()
{
int i,j,l,s1,s2,rez,aux;
FILE *f=fopen("balanta.in","r");
fscanf(f,"%d %d",&n,&m);
for (i=1;i<=n;i++)
g[i]=u[i]=1;
for (i=1;i<=m;i++)
{ fscanf(f,"%d",&k);
for (j=1;j<=k;j++)
{ fscanf(f,"%d",&aux);
a[aux]=1; }
for (j=1;j<=k;j++)
{ fscanf(f,"%d",&aux);
b[aux]=1; }
fscanf(f,"%d",&r);
if (r==0)
for (j=1;j<=n;j++)
{ if (a[j]) g[j]=u[j]=0;
if (b[j]) g[j]=u[j]=0;}
else
if (r==1)
{ for (j=1;j<=n;j++)
if (g[j]&&!a[j]) g[j]=0;
for (j=1;j<=n;j++)
if (u[j]&&!b[j]) u[j]=0; }
else if (r==2)
{ for (j=1;j<=n;j++)
if (g[j]&&!b[j]) g[j]=0;
for (j=1;j<=n;j++)
if (u[j]&&!a[j]) u[j]=0; }
for (j=1;j<=n;j++) a[j]=b[j]=0;
}
fclose(f);
for (s1=0,s2=0,rez=0,i=1;i<=n;i++)
{ s1+=g[i];
s2+=u[i];
if (g[i]) rez=i;
if (u[i]) rez=i; }
FILE *g=fopen("balanta.out","w");
if (s1==1&&s2==0||s1==0&&s2==1)
fprintf(g,"%d\n",rez);
else fprintf(g,"0\n");
fclose(g);
return 0;
}