Pagini recente » Cod sursa (job #2002702) | Cod sursa (job #2106601) | Cod sursa (job #1955822) | Cod sursa (job #1695830) | Cod sursa (job #26771)
Cod sursa(job #26771)
#include <stdio.h>
#define input "balanta.in"
#define output "balanta.out"
#define nmax 1025
int g[nmax],s[nmax],u[nmax];
int n,m,i,j,k,r,val,sol,s1,s2,v1,v2;
int main()
{
FILE *fin,*fout;
fin=fopen(input,"r");
fout=fopen(output,"w");
fscanf(fin,"%d %d",&n,&m);
for (i=1;i<=n;i++)
{g[i]=1; u[i]=1;}
for (i=1;i<=m;i++)
{
fscanf(fin,"%d",&k);
for (j=1;j<=2*k;j++)
fscanf(fin,"%d",&s[j]);
fscanf(fin,"%d",&r);
if (r==0)
for (j=1;j<=2*k;j++) g[s[j]]=0;
else
if (r==1)
for (j=k+1;j<=2*k;j++) g[s[j]]=0;
else
for (j=1;j<=k;j++) g[s[j]]=0;
if (r==0)
for (j=1;j<=2*k;j++) u[s[j]]=0;
else
if (r==1)
for (j=1;j<=k;j++) u[s[j]]=0;
else
for (j=k+1;j<=2*k;j++) u[s[j]]=0;
}
v1=v2=s1=s2=0;
for (i=1;i<=n;i++)
if (g[i]) {v1++; s1=i;}
for (i=1;i<=n;i++)
if (u[i]) {v2++; s2=i;}
fclose(fin);
if (v1==1&&v2==0) fprintf(fout,"%ld",s1);
else
if (v2==1&&v1==0) fprintf(fout,"%ld",s2);
else fprintf(fout,"0");
fclose(fout);
return 0;
}