#include <bits/stdc++.h>
using namespace std;
int a, b, f, k;
bool ok(int x) {
  int jr = k, pos = 0, fuel = b;
  while (jr--) {
    if (pos == 0) {
      int dist = f;
      if (jr == 0) {
        if (fuel < dist) {
          return false;
        }
        if (fuel >= a) {
          return true;
        } else {
          if (!x) {
            return false;
          }
          if (b < a - f) {
            return false;
          }
          return true;
        }
      }
      if (fuel < dist) {
        return false;
      }
      if (fuel >= a + a - f) {
        fuel -= a;
      } else {
        if (!x) {
          return false;
        }
        if (b < a - f) {
          return false;
        }
        fuel = b - (a - f);
        x--;
      }
    } else {
      int dist = a - f;
      if (jr == 0) {
        if (fuel < dist) {
          return false;
        }
        if (fuel >= a) {
          return true;
        } else {
          if (!x) {
            return false;
          }
          if (b < f) {
            return false;
          }
          return true;
        }
      }
      if (fuel < dist) {
        return false;
      }
      if (fuel >= a + f) {
        fuel -= a;
      } else {
        if (!x) {
          return false;
        }
        if (b < f) {
          return false;
        }
        fuel = b - f;
        x--;
      }
    }
    pos = a - pos;
  }
  return true;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cin >> a >> b >> f >> k;
  int l = 0, r = 1e9, ans = 1e9;
  while (l <= r) {
    int mid = l + (r - l) / 2;
    if (ok(mid)) {
      r = mid - 1;
      ans = mid;
    } else {
      l = mid + 1;
    }
  }
  if (ans == 1e9) {
    cout << -1 << endl;
    return 0;
  }
  cout << ans << endl;
}
