Pagini recente » Cod sursa (job #2931179) | Cod sursa (job #2968039) | Cod sursa (job #142438) | Cod sursa (job #2689850) | Cod sursa (job #25514)
Cod sursa(job #25514)
#include<fstream.h>
struct balanta
{int ok,cmp;
};
balanta v[1025];
int n,m,nr,a[513],b[513],min,max,minv,maxv,okmx,okmn;
int main()
{ifstream f("balanta.in");
ofstream g("balanta.out");
int c,i,j,val,k,ok1,l;
f>>n>>m;nr=n;
for(i=1;i<=m;i++)
{f>>k;
for(j=1;j<=k;j++) f>>a[j];
for(j=1;j<=k;j++) f>>b[j];
f>>val;
if(!val) for(j=1;j<=k;j++)
{if(!v[a[j]].ok) v[a[j]].ok=1;
if(!v[b[j]].ok) v[b[j]].ok=1;
}
else if(val==1)
{for(j=1;j<=n;j++)
{ok1=1;
for(l=1;l<=k;l++)
if((j==a[l])||(j==b[l])) {ok1=0;break;}
if(ok1) v[j].ok=1;
else if(!v[j].ok)
{if(j==a[l])
{v[j].cmp++;
if(v[j].cmp>max) {max=v[j].cmp;maxv=j;okmx=1;}
else if(v[j].cmp==max) okmx=0;
}
else
{v[j].cmp--;
if(v[j].cmp<min) {min=v[j].cmp;minv=j;okmn=1;}
else if(v[j].cmp==min) okmn=0;
}
}
}
}
else
{for(j=1;j<=n;j++)
{ok1=1;
for(l=1;l<=k;l++)
if((j==a[l])||(j==b[l])) {ok1=0;break;}
if(ok1) v[j].ok=1;
else if(!v[j].ok)
{if(j==a[l])
{v[j].cmp--;
if(v[j].cmp<min) {min=v[j].cmp;minv=j;okmn=1;}
else if(v[j].cmp==min) okmn=0;
}
else
{v[j].cmp++;
if(v[j].cmp>max) {max=v[j].cmp;maxv=j;okmx=1;}
else if(v[j].cmp==max) okmx=0;
}
}
}
}
}
f.close();
if(okmx)
{if(!okmn) g<<maxv<<'\n';
else {if(max>(-min)) g<<maxv<<'\n';
else if(max<(-min)) g<<minv<<'\n';
else g<<0<<'\n';
}
}
else {if(okmn) g<<minv<<'\n';
else g<<0<<'\n';
}
g.close();
return 0;
}