Cod sursa(job #1077801)
| Utilizator | Data | 11 ianuarie 2014 17:45:08 | |
|---|---|---|---|
| Problema | Balanta | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 1.4 kb |
#include <fstream>
using namespace std;
int n, m, k, i, j, x, y, r;
int v[1030];
int a[1030], b[1030], c[1030];
int main(){
ifstream f("balanta.in");
ofstream g("balanta.out");
f>>n>>m;
for(i=1; i<=n; i++)
v[i]=c[i]=1;
for(j=1; j<=m; j++)
{
for(i=1; i<=n; i++)
a[i]=b[i]=0;
f>>x;
for(i=1; i<=x; i++)
{
f>>y;
a[y]=1;
}
for(i=1; i<=x; i++)
{
f>>y;
b[y]=1;
}
f>>r;
if(r==0)
for(i=1; i<=n; i++)
{
if(v[i] && (a[i] || b[i]))
v[i]=0;
if(c[i] && (a[i] || b[i]))
c[i]=0;
}
else if(r==1)
for(i=1; i<=n; i++)
{
c[i]=c[i]*a[i];
v[i]=v[i]*b[i];
}
else
for(i=1; i<=n; i++)
{
c[i]=c[i]*b[i];
v[i]=v[i]*a[i];
}
}
k=0;
for(i=1; i<=n; i++)
if(v[i])
if(!k)
k=i;
else
k=-1;
for(i=1; i<=n; i++)
if(c[i])
if(!k)
k=i;
else
k=-1;
if(k==-1)
g<<"0\n";
else
g<<k<<"\n";
return 0;
}
