func_code_string: #include <bits/stdc++.h>   using namespace std;   long long int fib[51];   vector<long long int> calc(long long int n, long long int k) {     vector<long long int> res;     if (!n) return res;     if (n == 1) {       res.push_back(1);       return res;     }     if (k <= fib[n - 1]) {       res.push_back(1);       vector<long long int> v = calc(n - 1, k);       for (auto i : v) res.push_back(i + 1);     } else {       res.push_back(2);       res.push_back(1);       vector<long long int> v = calc(n - 2, k - fib[n - 1]);       for (auto i : v) res.push_back(i + 2);     }     return res;   }   void solve() {     fib[1] = 1, fib[2] = 2;     for (long long int i = 3; i <= 50; i++) fib[i] = fib[i - 1] + fib[i - 2];     long long int n, k;     cin >> n >> k;     vector<long long int> ans = calc(n, k);     for (auto i : ans) cout << i <<    ;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     ;     cout.precision(20);     long long int t = 1;     for (long long int i = 1; i <= t; i++) {       if (0) cout <<  Case #  << i <<  :  ;       solve();     }   }   