#include using namespace std; typedef long long ll; typedef vector vi; typedef vector vl; typedef complex P; typedef pair pii; #define REP(i,n) for(ll i=0;i> n >> m; vl fib(n); fib[0] = 1; fib[1] = 1; FOR(i,2,n)fib[i] = fib[i-1]+fib[i-2]; if(fib[n-1] < m){ cout << -1 << endl; return 0; } ll sa = fib[n-1] - m; ll result = 0; while(sa>0){ ++result; REP(_i,n-2){ ll i = n-3-_i; if(sa>=fib[i]){ sa -= fib[i]; break; } } } cout << result << endl; return 0; }