Cod sursa(job #2897507)

Utilizator bogdanputineluBogdan Putinelu bogdanputinelu Data 3 mai 2022 22:28:28
Problema Planeta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <fstream>
using namespace std;
ifstream f("planeta.in");
ofstream g("planeta.out");
long long k,v[31];
void solutie(int st,int dr,long long k){
    int i;
    for(i=st;v[i-st]*v[dr-i]<=k && i<=dr;i++)
        k-=v[i-st]*v[dr-i];
    g<<i<<' ';
    if(i>st)
        solutie(st,i-1,k/v[dr-i]);
    if(i<dr)
        solutie(i+1,dr,k%v[dr-i]);
}
int main(){
    int n;
    f>>n>>k;
    v[0]=v[1]=1;
    for(int i = 2; i <= n; i++)
        for(int j=0;j<i;j++)
            v[i]+=v[j]*v[i-j-1];
    solutie(1, n, --k);
    return 0;
}