#include using namespace std; #define ALL(x) begin(x),end(x) #define rep(i,n) for(int i=0;i<(n);i++) #define debug(v) cout<<#v<<":";for(auto x:v){cout<bool chmax(T &a,const T &b){if(abool chmin(T &a,const T &b){if(b ostream &operator<<(ostream &os,const vector&v){ for(int i=0;i<(int)v.size();i++) os< istream &operator>>(istream &is,vector&v){ for(T &x:v)is>>x; return is; } // Zeckendorf's Theoram signed main(){ const int k=10; vector f(k+1); f[1]=1,f[2]=1; for(int i=3;i<=k;i++) f[i]=f[i-1]+f[i-2]; ll n,m;cin>>n>>m; ll dif=f[n]-m; if(dif<0){ cout<<-1<0;i--){ if(f[i]<=dif){ dif-=f[i],res++; } } if(dif){ cout<<-1<