#include <bits/stdc++.h>
#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops")
#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
using namespace std;
long long pow(long long base, long long exp);
void solve() {
  long long a, x, y;
  cin >> a >> x >> y;
  if (y % a == 0) {
    cout << -1 << "\n";
    return;
  }
  long long p = 0;
  long long cnt = 0;
  long long i = 0;
  while (p < y) {
    if (i == 0 || i == 1 || i % 2 == 1) {
      p += a;
      cnt++;
    } else {
      p += a;
      cnt += 2;
    }
    i++;
  }
  i--;
  if (i == 0 || i == 1 || i % 2 == 1) {
    if ((1.0) * x < (1.0 * a) / 2 && (1.0) * x > ((-1.0) * a) / 2) {
      cout << cnt << "\n";
    } else
      cout << -1 << "\n";
  } else {
    if (x < a && x > 0) {
      cout << cnt << "\n";
    } else if (x > -a && x < 0) {
      cout << cnt - 1 << "\n";
    } else
      cout << -1 << "\n";
  }
}
int32_t main() {
  ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  srand(chrono::high_resolution_clock::now().time_since_epoch().count());
  long long t = 1;
  while (t--) {
    solve();
  }
  return 0;
}
long long pow(long long base, long long exp) {
  base %= 1000000007;
  long long result = 1;
  while (exp > 0) {
    if (exp & 1) result = ((long long)result * base) % 1000000007;
    base = ((long long)base * base) % 1000000007;
    exp >>= 1;
  }
  return result;
}
