Pagini recente » Cod sursa (job #2757945) | Cod sursa (job #464551) | Cod sursa (job #743513) | Cod sursa (job #2416545) | Cod sursa (job #467531)
Cod sursa(job #467531)
#include <algorithm>
using namespace std;
#define DIM 300005
#define sc second
#define fs first
pair <int,int> a[DIM],b[DIM];
int p,sum;
void read ()
{
int i;
scanf ("%d",&p);
for (i=1; i<=p; ++i)
{
scanf ("%d",&a[i].fs);
sum=(sum+a[i].fs)%p;
a[i].sc=i;
}
for (i=1; i<p; ++i)
{
scanf ("%d",&b[i].fs);
b[i].sc=p+i;
}
}
void solve ()
{
int in,out;
for ( ; sum; )
{
out=rand ()%p+1;
in=rand ()%(p-1)+1;
sum=(sum+b[in].fs-a[out].fs+p)%p;
swap (a[in],b[out]);
}
}
void print ()
{
int i;
for (i=1; i<=p; ++i)
printf ("%d ",a[i].sc);
}
int main ()
{
srand (time (0));
freopen ("congr.in","r",stdin);
freopen ("congr.out","w",stdout);
read ();
solve ();
print ();
return 0;
}