Cod sursa(job #3133834)

Utilizator alexnohai04Nohai Alexandru alexnohai04 Data 27 mai 2023 01:30:45
Problema Farfurii Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>
using namespace std;

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

const int N = 100005;

int main()
{
    int n;
    long long K;
    f >> n >> K;

    int S[N];
    bool vis[N] = { false };

    int lastIndex = 0;
    for (int i = 1; i <= n; ++i) {
        long long inv = 1LL * (n - i) * (n - i - 1) / 2;

        if (inv < K) {
            S[i] = i + K - inv;
            vis[i + K - inv] = true;
            lastIndex = i;
            break;
        }
        else {
            S[i] = i;
            vis[i] = true;
        }

        lastIndex = i;
    }

    for (int i = n; i > 0; i--) {
        if (!vis[i]) {
            S[++lastIndex] = i;
        }
    }

    for (int i = 1; i <= n; ++i) {
        g << S[i] << " ";
    }

    return 0;
}