Pagini recente » Cod sursa (job #2282438) | Cod sursa (job #1050955) | Cod sursa (job #1282853) | Cod sursa (job #2220788) | Cod sursa (job #1074416)
#include<fstream>
using namespace std;
ifstream f ("schi.in");
ofstream g ("schi.out");
int n,v[30000],i,q[66000],x,y,j,w[30000];
int main()
{
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
for(i=n;i>=1;i--)
{
j=1;
x=n;
y=1;
q[j]++;
while(x!=y)
{
if((x-y+1)/2-q[j*2]>=v[i])
{
x=x-(x-y+1)/2;
j*=2;
q[j]++;
}
else
{
v[i]=v[i]-((x-y+1)/2-q[j*2]);
y=y+(x-y+1)/2;
j=j*2+1;
q[j]++;
}
}
w[x]=i;
}
for(i=1;i<=n;i++)
g<<w[i]<<'\n';
}