Cod sursa(job #3185670)
Utilizator | Data | 19 decembrie 2023 20:16:53 | |
---|---|---|---|
Problema | Balanta | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 2.64 kb |
#include <fstream>
#include <iostream>
#include <map>
#include <algorithm>
using namespace std;
int n,m,i,j,k,v[2][1025],l,vt[1025],x,c1,c2,pos1,pos2;
int main(){
ifstream fin("balanta.in");
ofstream fout("balanta.out");
fin>>n>>m;
for(j=0;j<m;j++){
fin>>l;
for(i=1;i<=l*2;i++){
fin>>vt[i];
}
fin>>x;
if(x==0){
for(i=1;i<=l*2;i++){
v[0][vt[i]]=1;
v[1][vt[i]]=1;
}
}else{
if(x==1){
for(i=1;i<=n;i++){
if(v[0][i]==0){
for(k=1;k<=l;k++){
if(vt[k]==i){
v[0][i]=0;
break;
}else{
v[0][i]=1;
}
}
}
}
for(i=1;i<=n;i++){
if(v[1][i]==0){
for(k=l+1;k<=l*2;k++){
if(vt[k]==i){
v[1][i]=0;
break;
}else{
v[1][i]=1;
}
}
}
}
}else{
for(i=1;i<=n;i++){
if(v[0][i]==0){
for(k=l+1;k<=l*2;k++){
if(vt[k]==i){
v[0][i]=0;
break;
}else{
v[0][i]=1;
}
}
}
}
for(i=1;i<=n;i++){
if(v[1][i]==0){
for(k=1;k<=l;k++){
if(vt[k]==i){
v[1][i]=0;
break;
}else{
v[1][i]=1;
}
}
}
}
}
}
}
for(i=1;i<=n;i++){
if(v[0][i]==0){
c1++;
pos1=i;
}
if(v[1][i]==0){
c2++;
pos2=i;
}
}
if(c1==1&&c1!=c2){
fout<<pos1;
}else if(c1==1&&c2==1&&pos1==pos2){
fout<<pos1;
}else if(c2==1&&c2!=c1){
fout<<pos2;
}else{
fout<<0;
}
return 0;
}