#include <bits/stdc++.h>
using namespace std;

int main() {
	const int MAX = 90;
	int64_t fib[MAX];
	fib[0] = fib[1] = 1;
	for(int i = 2; i < MAX; ++i) {
		fib[i] = fib[i - 1] + fib[i - 2];
	}
	int64_t a[5]; for(int i = 0; i < 5; ++i) cin >> a[i];
	reverse(a, a + 5);
	int ans = 0;
	for(int i = 0; i < MAX; ++i) {
		if(fib[i] > a[0]) break;
		if(fib[i] == a[0]) {
			for(int k = 0; k < 5 and i + k < MAX; ++k) {
				if(fib[i + k] == a[k]) {
					ans = max(ans, k + 1);
				} else {
					break;
				}
			}
		}
	}
	cout << ans << endl;
	return 0;
}