Cod sursa(job #183135)

Utilizator znakeuJurba Andrei znakeu Data 21 aprilie 2008 19:18:09
Problema Farfurii Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
//farfurii v1.0
#include <stdio.h>
#define MAXN 100005

int main()
{
	freopen("farfurii.in","r",stdin);
	freopen("farfurii.out","w",stdout);
	
	int n=0,m=0,k=0,i,t;
	
	scanf("%d%d",&n,&k); t=2*k;

	for (m=2; m*(m-1)<=t; ++m);
	m--;
	
	if (m*(m-1)==k<<1)
	{
		printf("1");
		for (i=2; i<=n-m; ++i)
			printf(" %d",i);
		for (i=n; i>n-m; --i)
			printf(" %d",i);
		printf("\n");	
	}
	else
	{
		t= n-( (m+1)*m/2-k );
		printf("1");
		for (i=2; i<=n-m-1; ++i)
			printf(" %d",i);
		printf(" %d",t);
		for (i=n; i>n-m-1; --i)
			if (i!=t)
				printf(" %d",i);
		printf("\n");		
	}
	
	fclose(stdin);
	fclose(stdout);
	return 0;
}