Cod sursa(job #308195)

Utilizator alex23alexandru andronache alex23 Data 26 aprilie 2009 12:54:03
Problema Farfurii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <iostream>


FILE *f = fopen("farfurii.in", "r"), *g = fopen("farfurii.out", "w");

using namespace std;

__int64 N, K;

int main()
{
	fscanf(f, "%I64d %I64d", &N, &K);
	fclose(f);
	
	__int64 M = 1;
	while (((M * (M - 1)) / 2) < K)
	{
		M++;
	}
	M--;

	__int64 P = N - ((M * (M + 1)) / 2 - K);

	for (__int64 i = 1; i < N - M; ++i)
	{
		fprintf(g, "%I64d ", i); 
	}
	fprintf(g, "%I64d ", P);
	for (__int64  i = N; i >= N - M; --i)
	{
		if (i != P)
			fprintf(g, "%I64d ", i);
	}
	fclose(g);

	return 0;
}