Pagini recente » Cod sursa (job #3299842) | Cod sursa (job #1638659) | Cod sursa (job #1173613) | Cod sursa (job #1138051) | Cod sursa (job #1280528)
#include <fstream>
using namespace std;
ifstream fin("balanta.in");
ofstream fout("balanta.out");
int n,m,k,t,c,ok,i,j,g, ok1, ok2;
int w[1025],x,v1[1025],v2[1025], y;
void caz1(int c){
for(int i = 1; i <= c; i ++){
if(w[v1[i]] == 1){
ok1 = 0;
return;
}
}
return;
}
void caz2(int c){
for(int i = 1; i <= c; i ++){
if(w[v2[i]] == 1){
ok1 = 0;
return;
}
}
return;
}
int main(){
fin >> n >> m;
for(i = 1; i <= n; i ++)
w[i] = 1;
for(k = 1; k <= m; k ++){
fin >> c;
for(i = 1; i <= c; i ++)
fin >> v1[i];
for(i = 1; i <= c; i ++)
fin >> v2[i];
fin >> t;
if(t == 0){
for(i = 1; i <= c; i ++)
w[v1[i]] = 0;
w[v2[i]] = 0;
}
//g = 1(mai grea)
if(t == 1){//talerul din stanga mai greu
if(g == 0){
ok1 = 1;ok2 = 1;
caz1(c);caz2(c);
if(ok1 == 0 && ok2 == 1)
g = 1;
else
if(ok1 == 1 && ok2 == 0)
g = 2;
}
if(g == 1){
for(i = 1; i <= c; i ++)
w[v2[i]] = 0;
}
if(g == 2){
for(i = 1; i <= c; i ++)
w[v1[i]] = 0;
}
}
if(t == 2){
if(g == 0){
ok1 = 1;ok2 = 1;
caz1(c);caz2(c);
if(ok1 == 0 && ok2 == 1)
g = 1;
else
if(ok1 == 1 && ok2 == 0)
g = 2;
}
if(g == 1){
for(i = 1; i <= c; i ++)
w[v1[i]] = 0;
}
if(g == 2){
for(i = 1; i <= c; i ++)
w[v2[i]] = 0;
}
}
}
x = 0;
for(i = 1; i <= n; i ++)
if(w[i] == 1){
x ++;
y = i;
return 0;
}
if(x > 1)
fout << 0;
else
fout << y;
return 0;
}