Pagini recente » Cod sursa (job #2047636) | Cod sursa (job #2320032) | Istoria paginii runda/oni2014_ziua_ix/clasament | Cod sursa (job #2413294) | Cod sursa (job #2899599)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("planeta.in");
ofstream fout("planeta.out");
long long v[31];
void vec(int n)
{
v[0]=1;
v[1]=1;
for(int i=2;i<=n;i++)
for(int j=1;j<=i;j++)
v[i]=v[i]+v[j-1]*v[i-j];
return;
}
void creare(int st, int dr, long long k)
{
int i;
if(st>dr)
return;
for(i=st; i<=dr && v[i-st]*v[dr-i]<=k;i++)
k-=v[i-st]*v[dr-i];
fout<<i<<" ";
if(i>st)
creare(st, i-1, k/v[dr-i]);
if(i<dr)
creare(i+1, dr, k%v[dr-i]);
return;
}
int main()
{
int n;
long long k;
fin>>n>>k;
vec(n);
creare(1,n,k-1);
}