Cod sursa(job #1464291)

Utilizator ade_tomiEnache Adelina ade_tomi Data 22 iulie 2015 21:43:38
Problema Balanta Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.92 kb
#include<stdio.h>
int n,m,k,v[1050],x[1050],y[1060],i,j,p;
int main()
{

    freopen("balanta.in","r",stdin);
    freopen("balanta.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=m;i++)
    {

        scanf("%d",&k);
        for(j=1;j<=k;j++)
            scanf("%d",&x[j]);
        for(j=1;j<=k;j++)
            scanf("%d",&y[j]);
        scanf("%d",&p);
        if(p==0)
        {

            for(j=1;j<=k;j++)
            {

                v[x[j]]=v[y[j]]=1;
            }
        } else if(p==1)
        {
            for(j=1;j<=k;j++)
                v[x[j]]=1;

        } else
        {

            for(j=1;j<=k;j++)
                v[y[j]]=1;
        }

    }
    int ok=-1;
    for(i=1;i<=n;i++)
        if(v[i]==0)
        {

            if(ok==-1)
            {

                ok=i;
            }
            else{
               ok=-1;
              break;
            }
        }

    freopen("balanta.in","r",stdin);
    freopen("balanta.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
        v[i]=0;
    for(i=1;i<=m;i++)
    {

        scanf("%d",&k);
        for(j=1;j<=k;j++)
            scanf("%d",&x[j]);
        for(j=1;j<=k;j++)
            scanf("%d",&y[j]);
        scanf("%d",&p);
        if(p==0)
        {

            for(j=1;j<=k;j++)
            {

                v[x[j]]=v[y[j]]=1;
            }
        } else if(p==2)
        {
            for(j=1;j<=k;j++)
                v[x[j]]=1;

        } else
        {

            for(j=1;j<=k;j++)
                v[y[j]]=1;
        }

    }
    for(i=1;i<=n;i++)
        if(v[i]==0)
        {

            if(ok==-1)
            {

                ok=i;
            }
            else if(ok!=i){
                printf("0");
                return 0;
            }
        }
    if(ok==-1)
        ok=0;
    printf("%d",ok);
    return 0;
}