#include <bits/stdc++.h>
using namespace std;
const int INF = (int)1e9;
const double PI = 2 * acos(0.0);
const long long HI = 1e18;
const long long LO = -1e18;
int main() {
  long long x, y, m;
  while (cin >> x >> y >> m) {
    if (x >= m || y >= m) {
      cout << 0 << endl;
    } else if (x <= 0 && y <= 0) {
      cout << -1 << endl;
    } else {
      long long xx = min(x, y), yy = max(x, y);
      long long ans = 0, diff = (yy - xx);
      if (xx < 0) {
        ans += diff / yy;
        xx = -(-xx % yy) + yy;
      }
      while (xx < m && yy < m) {
        ++ans;
        if (xx <= yy)
          xx += yy;
        else
          yy += xx;
      }
      cout << ans << endl;
    }
  }
  return 0;
}
