#include <bits/stdc++.h>
using namespace std;
long a, b, f, k;
long i, g, d_left, d_right;
long p;
bool flag;
int rech;
int main() {
  cin >> a >> b >> f >> k;
  flag = true;
  rech = 0;
  g = b - f;
  d_left = f * 2;
  d_right = (a - f) * 2;
  if (b < f) return 0 * puts("-1");
  for (i = 1; i <= k; i++) {
    if (i < k) {
      if (flag) {
        if (g < d_right) {
          if (b < d_right)
            return 0 * puts("-1");
          else {
            rech++;
            g = b - d_right;
            flag = !flag;
          }
        } else {
          g -= d_right;
          flag = !flag;
        }
      } else {
        if (g < d_left) {
          if (b < d_left)
            return 0 * puts("-1");
          else {
            rech++;
            g = b - d_left;
            flag = !flag;
          }
        } else {
          g -= d_left;
          flag = !flag;
        }
      }
    } else {
      if (flag) {
        if (g < (a - f)) {
          if (b < (a - f))
            return 0 * puts("-1");
          else {
            rech++;
            g = b - (a - f);
            flag = !flag;
          }
        } else {
          flag = !flag;
        }
      } else {
        if (g < f) {
          if (b < f)
            return 0 * puts("-1");
          else {
            rech++;
            g = b - f;
            flag = !flag;
          }
        } else {
          flag = !flag;
        }
      }
    }
  }
  cout << rech;
  return 0;
}
