Pagini recente » Cod sursa (job #2334953) | Cod sursa (job #717193) | Cod sursa (job #2612636) | Cod sursa (job #2700168) | Cod sursa (job #1571642)
#include <fstream>
using namespace std;
int G[1100], U[1100];
int A[1100], B[1100];
int n, m, i, j, k, r, g, u, mon, x;
int main () {
ifstream fin("balanta.in");
ofstream fout("balanta.out");
fin>>n>>m;
for (i=1;i<=n;i++) {
U[i] = 1;
G[i] = 1;
}
for (i=1;i<=m;i++) {
fin>>k;
// a si b sunyt cu monede de la cantarirea curenta
for (j=1;j<=n;j++) {
A[j] = 0;
B[j] = 0;
}
for (j=1;j<=k;j++) {
fin>>x;
A[x] = 1;
}
for (j=1;j<=k;j++) {
fin>>x;
B[x] = 1;
}
fin>>r;
if (r == 0) {
// tot ce e marcat cu u in A si in B nu e nici grea nici usoara
for (j=1;j<=n;j++) {
if (A[j] == 1 || B[j] == 1) {
G[j] = 0;
U[j] = 0;
}
}
}
if (r == 1) {
// tot ce e setat cu 1 in A nu este usoara
// tot ce e setat cu 1 in B nu este grea
// tot ce e nesetat in ambele nu e nici grea nici usoara
for (j=1;j<=n;j++) {
if (A[j] == 1) {
U[j] = 0;
}
if (B[j] == 1){
G[j] = 0;
}
if (A[j] + B[j] == 0) {
U[j] = 0;
G[j] = 0;
}
}
}
if (r == 2) {
// tot ce e setat cu 1 in A nu este usoara
// tot ce e setat cu 1 in B nu este grea
// tot ce e nesetat in ambele nu e nici grea nici usoara
for (j=1;j<=n;j++) {
if (A[j] == 1) {
G[j] = 0;
}
if (B[j] == 1){
U[j] = 0;
}
if (A[j] + B[j] == 0) {
U[j] = 0;
G[j] = 0;
}
}
}
}
for (i=1;i<=n;i++) {
if (G[i] == 1) {
g++;
mon = i;
}
if (U[i] == 1) {
u++;
mon = i;
}
}
if (g + u == 1)
fout<<mon;
else
fout<<0;
}