Cod sursa(job #432588)

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