Cod sursa(job #2913565)

Utilizator toma_ariciuAriciu Toma toma_ariciu Data 15 iulie 2022 11:16:07
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
/// Preset de infoarena
#include <fstream>

using namespace std;

ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
typedef long long ll;

ll nr_inv;
int n, v[100005];

int main()
{
    fin >> n >> nr_inv;
    v[n] = 1;
    int poz = n - 1;
    while(nr_inv >= (n - poz) && poz >= 1)
    {
        v[poz] = v[poz + 1] + 1;
        nr_inv -= n - poz;
        poz--;
    }
    int maxi = v[poz + 1];
    v[poz] = v[n - nr_inv] + n - maxi - 1;
    for(int i = poz + 1; i <= n; i++)
        v[i] += n - maxi;
    for(int i = n - nr_inv + 1; i <= n; i++)
        v[i]--;
    for(int i = 1; i < poz; i++)
        v[i] = i;
    for(int i = 1; i <= n; i++)
        fout << v[i] << ' ';
    return 0;
}