#include <bits/stdc++.h>
using namespace std;
int n;
int query(int pos) {
  cout << "? " << pos + 1 << endl;
  int ret;
  cin >> ret;
  return ret;
}
void answer(int ans) {
  if (~ans)
    cout << "! " << ans + 1 << endl;
  else
    cout << "! " << -1 << endl;
  exit(0);
}
int main() {
  cin >> n;
  if (n % 4 == 2) answer(-1);
  int rev = 1;
  auto check = [&](long long k) {
    int x = query(k), y = query(k + n / 2);
    if (x == y) answer(k);
    return (x - y) * rev < 0;
  };
  auto binary_search = [&](long long ok, long long ng) {
    while (abs(ng - ok) > 1) {
      long long mid = (ng + ok) / 2;
      (check(mid) ? ok : ng) = mid;
    }
    return ok;
  };
  if (!check(0)) rev = -1;
  cout << binary_search(0, n / 2) << endl;
  return 0;
}
