// #define _GLIBCXX_DEBUG // for STL debug (optional) #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using ll = long long int; using int64 = long long int; template void chmax(T &a, T b) {a = max(a, b);} template void chmin(T &a, T b) {a = min(a, b);} template void chadd(T &a, T b) {a = a + b;} int dx[] = {0, 0, 1, -1}; int dy[] = {1, -1, 0, 0}; const int INF = 1LL << 29; const ll LONGINF = 1LL << 60; const ll MOD = 1000000007LL; int main() { long double x, y, h; cin >> x >> y >> h; x *= 1000, y *= 1000; int ans = 0; while(true) { // fprintf(stderr, "x = %.12Lf, y = %.12Lf, h = %.12Lf\n", x, y, h); if(x <= y and x > h) { x /= 2.0; h *= 2.0; ans++; } else if(x > y and y > h) { y /= 2.0; h *= 2.0; ans++; } else if(x <= y and y > h) { y /= 2.0; h *= 2.0; ans++; } else if(x > y and x > h) { x /= 2.0; h *= 2.0; ans++; } else break; } printf("%d\n", ans); return 0; }