#include using namespace std; #define rep(i, n) for (int i = 0; i < (n); ++i) using ll = long long; using ull = unsigned long long; int main() { cin.tie(nullptr)->sync_with_stdio(false); vector fib(2, 1); rep(i, 80) fib.push_back(fib[i] + fib[i + 1]); constexpr int n = 5; vector a(n); rep(i, n) cin >> a[i]; reverse(a.begin(), a.end()); vector idx(n, -3); rep(i, n) { int id = lower_bound(fib.begin(), fib.end(), a[i]) - fib.begin(); if (fib[id] == a[i]) idx[i] = id; } rep(i, n - 1) { if (a[i] == 1) idx[i] = 1; if (a[i] == 1 && a[i + 1] == 1) idx[i] = 0; } int ans = 0; rep(i, n) { if (idx[i] != -3 && (i == 0 || idx[i] == idx[i - 1] + 1)) ans++; else break; } cout << ans << '\n'; return 0; }