Cod sursa(job #2897704)

Utilizator ruxiiiIftimi Ruxandra ruxiii Data 4 mai 2022 16:11:37
Problema Planeta Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <bits/stdc++.h>

using namespace std;

ifstream cin("planeta.in");

ofstream cout("planeta.out");

int n, x, v[100], i, j, k;

void sol(int a, int b, int k, int v[])
{
    int i;
	for(i = a; v[i - a] * v[b - i] <= k && i <= b; i++)
		k = k - v[i - a] * v[b - i];
	cout<<i<<" ";
	if(a < i)
		sol(a, i - 1, k / v[b - i]);
	if(i < b)
		sol(i + 1, b, k % v[b - i]);
}

int main()
{
	cin>>n>>x;
	v[0] = 1;
	for(i = 1; i <= n; i++)
		for(j = 1; j <= i; j++)
			v[i] = v[i] + v[i - j] * v[j - 1];
    x--;
    sol(1, n, x, v);
    return 0;
}