Cod sursa(job #591083)

Utilizator paul_gabryelPaul Buda paul_gabryel Data 22 mai 2011 10:40:07
Problema Farfurii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb

#include <cstdio>
#include <fstream>

using namespace std;

int v[131072];

int main ()
{
	
	long long m=1,x,a,n,k;;
	ifstream in ("farfurii.in");
	freopen ("farfurii.out","w",stdout); 
	in>>n>>k;
	for(bool g=0;!g&&m<=n;++m){
		g=1;
		x=(n-m)*(n-m-1)>>1;
		if(x>k){
			v[m]=m;
			g=0;
			}
		else{
			v[m]=m+k-x;
			x=v[m];
			a=n;
			for(int i=m+1;i<=n;++i)
				if(x==a){
					v[i]=--a;
					--a;
					}
				else{
					v[i]=a;
					--a;
					}
			}
		}
	for(int i=1;i<=n;++i)
		printf("%d ",v[i]);
	
	return 0;}