#include <bits/stdc++.h>
using namespace std;
long long mceil(long long a, long long b) {
  if (a % b == 0) return a / b;
  return a / b + 1;
}
int main() {
  long long x, y, m, stp = 0, tmp;
  cin >> x >> y >> m;
  if (max(x, y) >= m) {
    cout << 0 << endl;
    return 0;
  }
  if (max(x, y) <= 0) {
    cout << -1 << endl;
    return 0;
  }
  if (x < y) swap(x, y);
  if (y < 0) {
    stp += mceil(-y, x);
    y = y + x * stp;
  }
  while (x < m) {
    tmp = x;
    x += y;
    y = tmp;
    stp++;
  }
  cout << stp << endl;
  return 0;
}
