Cod sursa(job #2231592)

Utilizator SqueekDanielTodasca Daniel SqueekDaniel Data 15 august 2018 00:31:01
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <bits/stdc++.h>

#define MaxN 100005
#define ull unsigned long long

std::ifstream InFile("farfurii.in");
std::ofstream OutFile("farfurii.out");

ull N, K;

void Citire() {
    InFile >> N >> K;
}

void Rezolvare() {
    ull Pivot;

    for (ull i=1; i<=N; i++) {
        Pivot = i;

        if((N-i) * (N-i-1) / 2 >= K) {
            OutFile << i << " " ;
        }
        else {
            i = N;
        }
    }

    ull Gauss = (N - Pivot) * (N - Pivot - 1) / 2;
    ull Swapped = Pivot + (K-Gauss);

    OutFile << Swapped << " " ;

    for (ull i=N; i>=Pivot; i--)
        if(Swapped != i)
            OutFile << i << " " ;

}

int main()
{
    Citire();
    Rezolvare();

    return 0;
}