Cod sursa(job #2773041)
Utilizator | Data | 4 septembrie 2021 11:47:35 | |
---|---|---|---|
Problema | Balanta | Scor | 0 |
Compilator | cpp-32 | Status | done |
Runda | Arhiva de probleme | Marime | 2.51 kb |
#include<fstream>
using namespace std;
ifstream fin ("balanta.in");
ofstream fout ("balanta.out");
int n, m, i, j, s, k, r, p, nr, nr2, s2;
int v[1030], f[1030], z[1030], L[1030], h[1030];
int main(){
fin>>n>>m;
for(i=1;i<=n;i++){
z[i]=1;
L[i]=1;
}
for(j=1;j<=m;j++){
fin>>k;
for(i=1;i<=k;i++)
fin>>v[i];
for(i=1;i<=k;i++)
fin>>f[i];
fin>>r;
if(r==1){
for(i=1;i<=n;i++)
h[i]=0;
for(i=1;i<=k;i++){
h[v[i]]=1;
}
for(i=1;i<=n;i++){
if(z[i]==1 && h[i]== 1)
z[i]=1;
else
z[i]=0;
}
for(i=1;i<=n;i++)
h[i]=0;
for(i=1;i<=k;i++){
h[f[i]]=1;
}
for(i=1;i<=n;i++){
if(L[i]==1 && h[i]== 1)
L[i]=1;
else
L[i]=0;
}
}
if(r==0){
for(j=1;j<=k;j++){
z[v[j]]=0;
L[v[j]]=0;
z[f[j]]=0;
L[f[j]]=0;
}
}
if(r==2){
for(i=1;i<=n;i++)
h[i]=0;
for(i=1;i<=k;i++){
h[f[i]]=1;
}
for(i=1;i<=n;i++){
if(z[i]==1 && h[i]== 1)
z[i]=1;
else
z[i]=0;
}
for(i=1;i<=n;i++)
h[i]=0;
for(i=1;i<=k;i++){
h[v[i]]=1;
}
for(i=1;i<=n;i++){
if(L[i]==1 && h[i]== 1)
L[i]=1;
else
L[i]=0;
}
}
}
nr=0;
for(i=1;i<=n;i++){
if(z[i]==1){
nr++;
s=i;
}
}
nr2=0;
for(i=1;i<=n;i++){
if(L[i]==1){
nr2++;
s2=i;
}
}
if(nr+nr2==1)
fout<<s;
else
fout<<"0";
}