Cod sursa(job #1574293)

Utilizator DeanWinchesterdean winchester DeanWinchester Data 20 ianuarie 2016 14:22:27
Problema Balanta Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.87 kb
#include <iostream>
#include <cstdio>
using namespace std;
int n, m, i, j, k, s[1030], d[1030], su, sg1,sg2, s1,s2,x[1030], l, ok,nr;
bool  g[1030], u[1030];
int main()
{
    freopen("balanta.in", "r", stdin);
    freopen("balanta.out", "w", stdout);
    scanf("%d %d", &n, &m);
    for(i=1;i<=n;i++){
        g[i]=1;
        u[i]=1;
    }
    for(i=1;i<=m;i++){
        scanf("%d", &k);
        for(j=1;j<=k;j++){
            scanf("%d", &s[j]);
        }
        for(j=1;j<=k;j++){
            scanf("%d", &d[j]);
        }
        scanf("%d", &x[i]);



            if(x[i]==0){
                for(j=1;j<=k;j++){
                    u[s[j]]=0;
                    g[s[j]]=0;
                    u[d[j]]=0;
                    g[d[j]]=0;
                }
            }
            else
            for(j=1;j<=n;j++){
                for(l=1;l<=n;l++){
                    if(s[j]==l || d[j]==l)
                    ok=1;
                }

                    if(ok==0){
                        u[j]=0;
                        g[j]=0;
                }
                    else ok=0;

            }

                {
                if(x[i]==1){
                    for(j=1;j<=k;j++){
                        u[s[j]]=0;
                        g[d[j]]=0;
                    }
                }
                else{

                        for(j=1;j<=k;j++){
                            u[d[j]]=0;
                            g[s[j]]=0;
                        }

                }
            }


   for(j=1;j<=k;j++)
            s[j] = d[j] = 0;
    }
    for(i=1;i<=n;i++){
        if(((u[i]==1 && nr==0) || (g[i]==1 && nr==0)) && (u[i]!=g[i])){
            printf("%d", i);
            return 0;
        }
        if(u[i]==1 || g[i]==1){
            printf("0");
            return 0;
        }
    }

    return 0;
}