Pagini recente » Cod sursa (job #1002618) | Cod sursa (job #1370295) | Cod sursa (job #882998) | Istoria paginii runda/tema33 | Cod sursa (job #700206)
Cod sursa(job #700206)
#include<stdio.h>
#include<stdlib.h>
FILE *f = fopen("balanta.in","r");
FILE *g = fopen("balanta.out","w");
#define MaxN 1100
int N,M,K,comp,B[MaxN],A1[MaxN],A2[MaxN],viz[MaxN];
void citire(void)
{
fscanf(f,"%d %d\n",&N,&M);
for(int i=1;i<=M;i++)
{
fscanf(f,"%d ",&K);
for(int j=1;j<=K;j++)
fscanf(f,"%d",&A1[j]);
for(int j=1;j<=K;j++)
fscanf(f,"%d",&A2[j]);
fscanf(f,"%d",&comp);
if(comp == 0)
for(int j=1;j<=K;j++)
B[A1[j]] = B[A2[j]] = 0,viz[A1[j]] = viz[A2[j]] = 1;
else if(comp == 1)
for(int j=1;j<=K;j++)
B[A1[j]] ++,B[A2[j]] --;
else
for(int j=1;j<=K;j++)
B[A1[j]] --, B[A2[j]]++;
}
}
int ExistaUnuSigur(void)
{
int MAX = 0,NR = 0,P;
for(int i=1;i<=N;i++)
if(abs(B[i]) > MAX && !viz[i])
MAX = abs(B[i]), NR = 1,P = i;
else if(abs(B[i]) == MAX)
++ NR;
if(NR > 1)
return 0;
else
return P;
}
int main()
{
citire();
fprintf(g,"%d",ExistaUnuSigur());
return 0;
}