Pagini recente » Cod sursa (job #656918) | Cod sursa (job #1963921) | Cod sursa (job #900931) | Cod sursa (job #2077880) | Cod sursa (job #403747)
Cod sursa(job #403747)
#include <stdio.h>
#include <string.h>
FILE*f = fopen("balanta.in","r");
FILE*h = fopen("balanta.out","w");
char a[10048],b[10048],u[10048],g[10048];
int i, j, n, cardu,cardg,x,k,m,r;
int main() {
fscanf(f,"%d %d",&n,&m);
for(i=1;i<=n;i++){
u[i]=1;
g[i]=1;
}
//cardu=n;
//cardg=n;
for(i=1;i<=m;i++){
fscanf(f,"%d",&k);
for(j=1;j<=k;j++){
fscanf(f,"%d",&x);
a[x]=1;
}
for(j=1;j<=k;j++){
fscanf(f,"%d",&x);
b[x]=1;
}
fscanf(f,"%d",&r);
if(r==0){
for(j=1;j<=n;j++){
if(u[j]==a[j])
u[j]=0;
if(g[j]==a[j])
g[j]=0;
if(u[j]==b[j])
u[j]=0;
if(g[j]==b[j])
g[j]=0;
}
//cardu-=k*2;
//cardg-=k*2;
}else if(r==1){
for(j=1;j<=n;j++){
if(u[j]==a[j])
u[j]=0;
if(g[j]==b[j])
g[j]=0;
}
// cardu-=k;
//cardg-=k;
}else if(r==2){
for(j=1;j<=n;j++){
if(u[j]==b[j])
u[j]=0;
if(g[j]==a[j])
g[j]=0;
}
//cardu-=k;
//cardg-=k;
}
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
}
for(i=1;i<=n;i++){
if(u[i]==1)
cardu++;
if(g[i]==1)
cardg++;
}
if(cardu>1&&cardg>1){
fprintf(h,"0");
} else {
if(cardu==1){
for(i=1;i<=n;i++){
if(u[i]==1)
fprintf(h,"%d",i);
}
}else if(cardg==1){
for(i=1;i<=n;i++){
if(g[i]==1)
fprintf(h,"%d",i);
}
}
}
fclose(f);
fclose(h);
return 0;
}