Pagini recente » Cod sursa (job #1689485) | Cod sursa (job #2417462) | Cod sursa (job #1756347) | Cod sursa (job #440951) | Cod sursa (job #3132406)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
class FarfuriiSolver {
private:
int n, k;
int calculateX() {
int x = 1;
while (x * (x + 1) / 2 < k)
x++;
return x + 1;
}
void afisMaiMiciX(int x) {
for (int i = 1; i <= n - x; i++)
fout << i << " ";
}
void afisMaiMariX(int x, int nr) {
for (int i = n; i > n - x; i--)
if (i != nr)
fout << i << " ";
}
public:
void readInput() {
fin >> n >> k;
}
void solveProblem() {
int x = calculateX();
afisMaiMiciX(x);
if (k == x * (x - 1) / 2) {
afisMaiMariX(x, n);
return;
}
int nr = n - (x * (x - 1) / 2 - k);
fout << nr << " ";
afisMaiMariX(x, nr);
}
};
int main() {
FarfuriiSolver solver;
solver.readInput();
solver.solveProblem();
return 0;
}