#include <bits/stdc++.h>
using namespace std;
int get(int l) {
  int level = l - 2;
  if (level % 2 == 0) return (level / 2) * 3 + 2;
  level = level + 1;
  return 3 * (level / 2);
}
int solve(int a, int x, int y) {
  if (abs(x) >= a) return -1;
  int z = y / a;
  double tt = (double)y / (double)a;
  double zz = z;
  if (tt == zz) return -1;
  int level = ceil(tt);
  if ((a % 2) == 1) a = a + 1;
  if (level == 1 && abs(x) < a / 2) {
    return 1;
  } else if (level == 1 && abs(x) >= a / 2)
    return -1;
  if (level == 2 && abs(x) < a / 2) {
    return 2;
  } else if (level == 2 && abs(x) >= a / 2)
    return -1;
  int num = get(level);
  if (level % 2 == 0 && abs(x) < a / 2) {
    return num;
  } else if (level % 2 == 0 && abs(x) >= a / 2)
    return -1;
  if (x > 0) return num + 1;
  if (x < 0) return num;
  if (x == 0) return -1;
}
int main() {
  int a, x, y;
  cin >> a >> x >> y;
  cout << solve(a, x, y);
  return 0;
}
