Cod sursa(job #2751939)

Utilizator SteFUNGrigorescu Stefan Dumitru SteFUN Data 16 mai 2021 05:26:06
Problema Farfurii Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <iostream>
#include <fstream>
#include <cmath>

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

int main()
{
	int n, k;
	f >> n >> k;
	int descrescatoare = (1 + sqrt(1 + 8 * k))/2;
	int inversiuni_aferente = descrescatoare * (descrescatoare - 1) / 2;
	int inversiuni_ramase = k - inversiuni_aferente;
	int crescatoare = n - descrescatoare - 1;

	int i;
	for (i = 1; i <= crescatoare; i++)
		g << i << " ";

	int salvatul = n - inversiuni_ramase;
	g << salvatul << " ";

	for (n = n; n > salvatul; n--)
		g << n << " ";
	n--;

	for (n = n; n >= i; n--)
		g << n << " ";


	return 0;
}