Cod sursa(job #1360519)

Utilizator dariusdariusMarian Darius dariusdarius Data 25 februarie 2015 15:50:59
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <fstream>
using namespace std;

int main() {
    ifstream fin("farfurii.in");
    ofstream fout("farfurii.out");
    int n; long long k; bool space = 0;
    fin >> n >> k;
    for (int i = 1; i <= n; ++ i) {
        if (k <= 1LL * (n - i) * (n - i - 1) / 2) {
            if (space) {
                fout << " ";
            } else {
                space = true;
            }
            fout << i;
        } else {
            if (space) {
                fout << " ";
            } else {
                space = true;
            }
            fout << 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) {
                        fout << " ";
                    } else {
                        space = true;
                    }
                    fout << j;
                }
            }
            fout << "\n";
            return 0;
        }
    }
    fout << "\n";
    return 0;
}