Pagini recente » Cod sursa (job #2284590) | Cod sursa (job #3252942) | Istoria paginii utilizator/gheorghita_vlad | Cod sursa (job #1331446) | Cod sursa (job #1333367)
#include <cstdio>
#define INF 2000000000
using namespace std;
int main()
{
int n,m,cnt,val,rez,k,a[3000],posgreu[3000],posusor[3000],i,decisive=0,cnt1;
freopen ("balanta.in","r",stdin);
freopen ("balanta.out","w",stdout);
scanf("%d%d", &n,&m);
for(i=1;i<=n;++i) posgreu[i]=posusor[i]=0;
while(m--)
{
scanf("%d", &k);
for(i=1;i<=2*k;++i) scanf("%d", &a[i]);
scanf("%d", &rez);
if(!rez)
for(i=1;i<=2*k;++i) posgreu[a[i]]=posusor[a[i]]=-INF;
else
{
++decisive;
if(rez==1)
{
for(i=1;i<=k;++i)
posgreu[a[i]]++;
for(i=k+1;i<=2*k;++i)
posgreu[a[i]]=-INF;
for(i=k+1;i<=2*k;++i)
posusor[a[i]]++;
for(i=1;i<=k;++i)
posusor[a[i]]=-INF;
}
else
{
for(i=k+1;i<=2*k;++i)
posgreu[a[i]]++;
for(i=1;i<=k;++i)
posgreu[a[i]]=-INF;
for(i=1;i<=k;++i)
posusor[a[i]]++;
for(i=k+1;i<=2*k;++i)
posusor[a[i]]=-INF;
}
}
}
for(i=1,cnt=cnt1=0;i<=n;++i)
{
if(posgreu[i]==decisive) ++cnt;
if(posusor[i]==decisive) ++cnt1;
}
if(cnt==1 && cnt1==1)
{
printf("0\n");
return 0;
}
for(i=1,cnt=0;i<=n;++i)
if(posgreu[i]==decisive)
{
++cnt;
val=i;
}
if(cnt==1)
printf("%d\n", val);
else
{
for(i=1,cnt=0;i<=n;++i)
if(posusor[i]==decisive)
{
++cnt;
val=i;
}
if(cnt==1) printf("%d\n", val);
else printf("0\n");
}
return 0;
}