Cod sursa(job #2231591)

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

#define MaxN 100005

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

int N, K;

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

void Rezolvare() {
    int Pivot;

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

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

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

    OutFile << Swapped << " " ;

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

}

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

    return 0;
}