Pagini recente » Profil Haunted_Cpp | Borderou de evaluare (job #1327298) | Cod sursa (job #3156634) | Cod sursa (job #2189431) | Cod sursa (job #1107081)
#include <fstream>
#include <algorithm>
#include <iostream>
#define nmax 30000
using namespace std;
ifstream f("schi.in");
ofstream g("schi.out");
struct rez
{
int poz,ind;
};
rez a[nmax + 1];
int b[nmax + 1], n, p[31];
int main()
{
f >> n;
for (int i=1;i<=n;i++)
{
f >> a[i].poz;
a[i].ind = i;
}
for (int i=1;i<=30;i++)
p[i] = 100;
for (int i=n;i>0;i--)
{
int x = a[i].poz ;
int sum = 0, k = 1;
while (sum + p[k] < x ) k++;
sum += (k-1) * 100;
while ( x != 0)
{
sum++;
if (b[sum] == 0) x--;
}
p[k]--;
b[sum] = a[i].ind;
}
for (int i=1;i<=n;i++)
g << b[i] << " " ;
return 0;
}