Cod sursa(job #2755280)

Utilizator XeinIonel-Alexandru Culea Xein Data 26 mai 2021 22:36:55
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>

std::ifstream f("farfurii.in");
std::ofstream g("farfurii.out");
int N;
long long K;

void solutie()
{
    for(int i = 1; i < N - 1; ++i)
    {
        if(1LL * (N - i) * (N - i - 1) / 2 >= K)
            g << i << ' ';
        else
        {
            K -= 1LL * (N - i) * (N - i - 1) / 2;
            int Val = i;
            while(K != 0)
            {
                --K;
                ++Val;
            }
            g << Val << ' ';
            for(int j = N; j >= i; --j)
                if(j != Val)
                    g << j << ' ';
            return;
        }
    }
    if(K == 1)
        g << N << ' ' << N - 1;
    else // K == 0
        g << N - 1 << ' ' << N;
}

int main()
{
    f >> N >> K;

    if(N == 1)
        g << 1;
    solutie();

    return 0;
}