Cod sursa(job #3369298)

Utilizator AndreiEnacheTheGoatAndrei Iancu Enache AndreiEnacheTheGoat Data 19 octombrie 2026 15:40:43
Problema Farfurii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <bits/stdc++.h>

using namespace std;

const int NMAX = 100000;
int v[NMAX + 5];

bool cmp(int a, int b)
{
    return a > b;
}

int main()
{
    int n, k, i, poz;
    cin >> n >> k;
    for(i = 1; i <= n; i ++)
        v[i] = i;
    poz = 0;
    for(i = 1; i <= n; i ++)
    {
        if((n - i) * (n - i - 1) / 2 <= k)
        {
            poz = i;
            break;
        }
    }
    int temp;
    temp = v[poz];
    v[poz] += (k - (n - i) * (n - i - 1) / 2);
    for(i = 1; i <= poz; i ++)
        cout << v[i] << " ";
    vector<int> a;
    for(i = poz + 1; i <= n; i ++)
    {
        if(v[i] == v[poz])
            a.push_back(temp);
        else
            a.push_back(v[i]);
    }
    sort(a.begin(), a.end(), cmp);
    for(i = 0; i < a.size(); i ++)
        cout << a[i] << " ";
    return 0;
}