Pagini recente » Cod sursa (job #2427997) | Cod sursa (job #2635720) | Cod sursa (job #503061) | Cod sursa (job #1102081) | Cod sursa (job #480350)
Cod sursa(job #480350)
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
const int N=600006;
int n, v[N], lim, m[N], num[N];
void Read()
{
scanf("%d",&n);
for( int i=1; i<n*2; ++i)
{
scanf("%d",&v[i]);
v[i]%=n;
}
}
void Initialise()
{
for( int i=1; i<n*2; ++i)
m[i]=i;
lim=n*2;
}
void Solve()
{
srand(time(0));
int aux, sum;
while(1)
{
Initialise();
sum=0;
for( int i=1; i<n; ++i)
{
aux=rand()%lim;
sum= (sum+v[m[aux]])%n;
m[aux]=--lim;
num[i]=aux;
}
for( int i=1; i<lim; ++i)
if( (sum+v[m[i]])%n==0 )
{
for( int j=1 ;j<n; ++j)
printf("%d ",num[j]);
printf("%d\n",m[i]);
exit(0);
}
}
}
int main()
{
freopen("congr.in","r",stdin);
freopen("congr.out","w",stdout);
Read();
Solve();
return 0;
}