Pagini recente » Cod sursa (job #633054) | Cod sursa (job #1282974) | Cod sursa (job #1301346) | Cod sursa (job #2178148) | Cod sursa (job #864751)
Cod sursa(job #864751)
#include<stdio.h>
#include<math.h>
#include<algorithm>
#include<fstream>
using namespace std;
struct Mystruct {int nr,i;} v[600005];
int l[600005];
int main()
{
ifstream cin("congr.in");
ofstream cout("congr.out");
int i,j,p,n,st,dr,k,s;
cin>>p;
n=p*2-1;
for(i=1;i<=n;i++)
{
cin>>v[i].nr;
v[i].i=i;
}
for(i=1;i<=n;i++) v[i].nr%=p;
while(1)
{
random_shuffle(v+1,v+n+1);
st=1,dr=0,k=0,s=0;
while(st<=p)
if(dr-st+1==p)
{
l[++k]=s;
s=(s-v[st++].nr+v[++dr].nr+p)%p;
}
else
s=(s+v[++dr].nr)%p;
for(i=1;i<=p;i++)
if(l[i]==0)
{
for(j=i;j<=p+i-1;j++)
cout<<v[j].i<<" ";
return 0;
}
}
return 0;
}