Cod sursa(job #2897731)

Utilizator Andreeamiruna27Mindrescu Andreea Andreeamiruna27 Data 4 mai 2022 17:55:34
Problema Planeta Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
using namespace std;

ifstream f("planeta.in");
ofstream g("planeta.out");

long long v[32], k;
void rezolvare(int st, int dr, long long k)
{
    int i;
    for(i=st; v[i-st]*v[dr-i]<=k and i<=dr; i++)
    {
        k=k-v[i-st]*v[dr-i];
    }
    g<<i<<" ";
    if(i>st)
    {
        rezolvare(st, i-1, k/v[dr-i]);

    }
    if(i<dr)
    {
        rezolvare(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];
        }
    }
    rezolvare(1, n, --k);
}