Cod sursa(job #185686)

Utilizator AndreyPAndrei Poenaru AndreyP Data 25 aprilie 2008 20:14:37
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<stdio.h>
#include<math.h>
long long n,k,m,w,aux;
void afla_m()
{
	m=(long long)sqrt(k);
	aux=m*(m+1)/2;
	while(aux<k)
	{
		m++;
		aux+=m;
	}
}
int main()
{
	freopen("farfurii.in","r",stdin);
	freopen("farfurii.out","w",stdout);
	scanf("%lld%lld",&n,&k);
	afla_m();
	w=aux-k;
	w=n-w;
	aux=n-m;
	long long i;
	for(i=1; i<aux; i++)
		printf("%lld ",i);
	if(w)
		printf("%lld ",w);
	for(i=n; i>=aux; i--)
		if(i!=w)
			printf("%lld ",i);
	printf("\n");
	return 0;
}