Pagini recente » Cod sursa (job #1171078) | Cod sursa (job #2822378) | Cod sursa (job #2090905) | Cod sursa (job #2901777) | Cod sursa (job #2446384)
#include <bits/stdc++.h>
using namespace std;
int p, n, i, j, k, a[300001], b[300000];
long long v[600000], s=0LL;
char parse[4096];
int read();
int main()
{
freopen("congr.in", "r", stdin);
freopen("congr.out", "w", stdout);
srand(time(NULL));
scanf("%d", &p); fgetc(stdin);
fgets(parse, 4096, stdin);
n=2*p-1; k=-1;
for(i=1; i<=n; ++i) {
v[i]=read();
if(i<=p) {s+=v[i]; a[i]=i;}
else b[i-p]=i;
}
while(s%p){
int i, j;
i=rand()%n+1;
j=rand()%(n-1)+1;
s=s-v[a[i]]+v[b[j]];
swap(a[i], b[j]);
}
for(i=1; i<=p; ++i) printf("%d ", v[a[i]]);
return 0;
}
int read(){
if(k==4095) {fgets(parse, 4096, stdin); k=-1;}
++k;
int nr=0;
while(parse[k]!=' ' && parse[k]!='\n'){
nr=nr*10+(parse[k]-'0');
if(k==4095) {fgets(parse, 4096, stdin); k=-1;}
++k;
}
return nr;
}