Cod sursa(job #2899599)

Utilizator RaresParleaParlea Costin-Rares-Calin RaresParlea Data 8 mai 2022 23:09:09
Problema Planeta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#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);
}