Cod sursa(job #2942142)

Utilizator _andrei4567Stan Andrei _andrei4567 Data 19 noiembrie 2022 00:05:43
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <fstream>
#define int long long

using namespace std;

ifstream cin ("farfurii.in");
ofstream cout ("farfurii.out");

const int N = 1e5;
bool viz[N + 3];

int n, m;

signed main()
{
    cin >> n >> m;
    for (int i = 1; i <= n; ++i)
    {
        int ramase = n - i + 1;
        if (ramase * (ramase - 1) / 2 >= m && (ramase - 1) * (ramase - 2) / 2 < m)
        {
            int dif = (ramase * (ramase - 1) / 2) - m;
            cout << n - dif << ' ';
            viz[n - dif] = 1;
            break;
        }
        else
            cout << i << ' ', viz[i] = 1;
    }
    for (int i = n; i >= 1; --i)
        if (!viz[i])
            cout << i << ' ';
    return 0;
}