Cod sursa(job #2755244)

Utilizator bestman4111Tiberiu Niculae bestman4111 Data 26 mai 2021 21:50:06
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<iostream>
#include<fstream>
using namespace std;

ifstream cit("farfurii.in");
ofstream afis("farfurii.out");

int main()
{
    long long int n, k, nr, spec;
    cit>>n>>k;
    if(n == 1){
        afis<<1;
    }
    else{
        nr = 1;
        while(nr*(nr + 1)/2 <= k){
            nr++;
        }
        if(nr*(nr - 1)/2 == k){
            for(int i = 1; i <= n - nr; i++){
                afis<<i<<" ";
            }
            for(int i = n; i > n - nr; i--){
                afis<<i<<" ";
            }
        }
        else{
            for(int i = 1; i < n - nr; i++){
                afis<<i<<" ";
            }
            spec = n - nr + k - (nr*(nr - 1)/2);
            afis<<spec<<" ";
            for(int i = n; i >= n - nr; i--){
                if(i != spec){
                    afis<<i<<" ";
                }
            }
        }
    }
    return 0;
}