Cod sursa(job #432572)

Utilizator drywaterLazar Vlad drywater Data 2 aprilie 2010 15:40:00
Problema Farfurii Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.46 kb
#include <stdio.h>
int i,n,v[100001],poz,au,k;
FILE *f=fopen("farfurii.in","r"),*g=fopen("farfurii.out","w");
int main(void)
{
	fscanf(f,"%d%d",&n,&k);
	int p;
	p=1;
	while ((p*(p-1))/2<k) p++;
	poz=n-p+1+(p*(p-1))/2-k;
	for (i=1;i<=n;i++)
	{
		if (n-i-p==-1)
			v[i]=n-poz+1+n-p;
		else
		{
		if (n-i-p<0) if (i<=poz)v[i]=n-i+1+n-p+1; else v[i]=n-i+n-p+1;
		else v[i]=i;
		}
	}
	for (i=1;i<=n;i++)
		fprintf(g,"%d ",v[i]);
	fclose(g);
	return 0;
}