Cod sursa(job #2218930)

Utilizator HumikoPostu Alexandru Humiko Data 6 iulie 2018 15:02:58
Problema Farfurii Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin ("farfurii.in");
ofstream fout ("farfurii.out");

long long n, k, position, boundary;

long long gauss( int current_Value )
{
    return current_Value*(current_Value-1)/2;
}

int main()
{
    fin>>n>>k;
    for ( int plates = 1; plates <= n; ++plates )
    {
        if ( gauss(plates+1) >= k )
        {
            position = plates+1;
            break;
        }
    }

    for ( int plates = 1; plates <= n-position; ++plates )
        fout<<plates<<" ";

    boundary = n-(gauss(position)-k);
    fout<<boundary<<" ";

    for ( int plates = n; plates > n-position; --plates )
        if ( plates != boundary )
            fout<<plates<<" ";
}