Cod sursa(job #2737364)

Utilizator carinamariaCarina Maria Viespescu carinamaria Data 4 aprilie 2021 18:20:36
Problema Balanta Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.59 kb
#include <fstream>
using namespace std;
ifstream cin("balanta.in");
ofstream cout("balanta.out");
int i, j, x, n, m, st[1025], dr[1025], k, minim, p, nr, val, greu[1025], f[1025], cnt;
int main() {
    cin>>nr>>m;
    for(j=1;j<=m;j++){
        cin>>n;
        for(i=1;i<=n;i++)
            cin>>st[i];
        for(i=1;i<=n;i++)
            cin>>dr[i];
        cin>>val;
        if(val==0){
            for(i=1;i<=n;i++){
                greu[st[i]]=0;
                greu[dr[i]]=0;
            }
        }
        else if(val==1){
            for(i=1;i<=n;i++){
                greu[st[i]]+=1;
                greu[dr[i]]-=1;
                f[st[i]]=1;
                f[dr[i]]=1;
            }
        }
        else if(val==2){
            for(i=1;i<=n;i++){
                greu[st[i]]-=1;
                greu[dr[i]]+=1;
                f[st[i]]=1;
                f[dr[i]]=1;
            }
        }
    }
    for(i=1;i<=1024;i++){
        if(greu[st[i]]!=0 && f[st[i]]==1){
            cnt++;

        }
        if(greu[dr[i]]!=0 && f[dr[i]]==1){
            cnt++;

        }
        if(cnt==1){
                for(i=1;i<=1024;i++){
                    if(greu[st[i]]!=0 && f[st[i]]==1){
                        cout<<st[i];
                        return 0;
                    }
                    if(greu[dr[i]]!=0 && f[dr[i]]==1){
                        cout<<dr[i];
                        return 0;
                    }
                }
        }
        else{
            cout<<0;
            return 0;
        }

    }
    cout<<0;

}