Cod sursa(job #2859046)

Utilizator ioan_bogioan bogdan ioan_bog Data 28 februarie 2022 19:44:06
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>


using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");

long long i = 1, val;
long long  ok = 1, copyy, perm;
long long n, k, v[800001];
int main()
{
 
    f >> n >> k;
    copyy = n;
    while (ok)
    {
        perm = ((n - i) * (n - i + 1)) / 2;
        if (perm >= k)
        {
            v[i] = i, i++;
        }
        else
        {
            v[i - 1] = i - 1 + k - perm;
            val = i - 1 + k - perm;
            ok = 0;
            i--;
        }
    }
    for (int j = 1; j <= i; j++) 
        g << v[j] << " ";

    for (int j = i; j < n; j++)
    {
        if (copyy == val)
            copyy--;
        g << copyy-- << " ";
    }
}