#include using namespace std; #ifdef LOCAL #include "settings/debug.cpp" #else #define Debug(...) void(0) #endif #define rep(i, n) for (int i = 0; i < (n); ++i) using ll = long long; using ull = unsigned long long; inline bool check(ll n, ll k) { if (n == 1) return true; ll sum = 1; vector a(k - 1, 0); a.push_back(1); for (int i = k;; ++i) { a.push_back(sum); sum -= a[i - k]; sum += a[i]; if (sum > n) return false; if (sum == n) return true; } assert(false); return false; } int main() { cin.tie(nullptr)->sync_with_stdio(false); ll n; cin >> n; for (int i = 2; i <= 100; ++i) { if (check(n, i)) { cout << i << '\n'; return 0; } } cout << -1 << '\n'; return 0; }