Cod sursa(job #2108197)

Utilizator dariusdariusMarian Darius dariusdarius Data 17 ianuarie 2018 23:24:46
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <fstream>

int main() {
    std::ifstream cin("farfurii.in");
    std::ofstream cout("farfurii.out");
    int n;
    long long k;
    bool space = 0;
    cin >> n >> k;
    for (int i = 1; i <= n; ++ i) {
        if (k <= 1LL * (n - i) * (n - i - 1) / 2) {
            if (space) {
                cout << " ";
            } else {
                space = true;
            }
            cout << i;
        } else {
            if (space) {
                cout << " ";
            } else {
                space = true;
            }
            cout << i + k - 1LL * (n - i) * (n - i - 1) / 2;
            for (int j = n; j >= i; -- j) {
                if (j != i + k - 1LL * (n - i) * (n - i - 1) / 2) {
                    if (space) {
                        cout << " ";
                    } else {
                        space = true;
                    }
                    cout << j;
                }
            }
            cout << "\n";
            return 0;
        }
    }
    cout << "\n";
    return 0;
}