Cod sursa(job #2314685)

Utilizator dianamichesaRosu Diana Michesa dianamichesa Data 8 ianuarie 2019 22:43:14
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("farfurii.in");
ofstream g("farfurii.out");

const int N = 100005;
long long n, k, v[N];

int main()
{
    f >> n >> k;
    long long pos = 1;
    long long i = 1, j;
    while((i * (i + 1)) / 2 < k)
        ++ i;
    pos = i;
    //g << pos << '\n';
    for(i = 1; i <= n - pos - 1; ++i)
        v[i] = i;
    long long x = n - (pos * (pos + 1)) / 2 + k;
    v[n - pos] = x;
    //g << x << '\n';
    j = n - pos + 1;
    for(i = n; i >= n - pos; --i) {
        if(i != x) {
            v[j] = i;
            ++ j;
        }
    }
    for(i = 1; i <= n ; i ++)
        g << v[i] << ' ';
    return 0;
}