Pagini recente » Monitorul de evaluare | Cod sursa (job #142992) | Cod sursa (job #2654518) | Cod sursa (job #2810079) | Cod sursa (job #2024504)
#include <bits/stdc++.h>
using namespace std;
const int maxN=3e5+4;
int n,sum;
int v[2*maxN];
vector<int> group1;
vector<int> group2;
int main()
{
srand(time(0));
freopen("congr.in","r",stdin);
freopen("congr.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<2*n;i++)
scanf("%d",&v[i]);
for(int i=1;i<=n;i++){
sum+=v[i];
group1.push_back(i);
}
for(int i=n+1;i<2*n;i++)
group2.push_back(i);
while(sum%n!=0)
{
int pos1=rand()%n;
int pos2=rand()%(n-1);
sum-=v[group1[pos1]];
sum+=v[group2[pos2]];
swap(group1[pos1],group2[pos2]);
}
for(auto it:group1)
printf("%d ",it);
return 0;
}