Pagini recente » Cod sursa (job #2703343) | Cod sursa (job #773287) | Cod sursa (job #3126053) | Cod sursa (job #1776042) | Cod sursa (job #157288)
Cod sursa(job #157288)
#include<stdio.h>
int sol2[30001],x[30001],nr,j,n,i,v[30001],p,s;
int main(){
FILE *f=fopen("schi.in","r");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++){
fscanf(f,"%d",&v[i]);
}
fclose(f);
sol2[v[n]]=n;
p=v[n]+1;
s=v[n];
x[p-1]=1;
for(i=n-1;i>=1;i--){
if(v[i]>=s){
sol2[p+v[i]-s]=i;
p=p+(v[i]-s)+1;
s=v[i];
x[p-1]=1;
}
else{
nr=0;
j=0;
do{
j++;
if(!x[j])
nr++;
}while(nr!=v[i]);
sol2[j]=i;
x[j]=1;
s--;
}
}
FILE *g=fopen("schi.out","w");
for(i=1;i<=n;i++)
fprintf(g,"%d\n",sol2[i]);
fclose(g);
return 0;
}