#include <bits/stdc++.h>
using namespace std;
int n;
void into() { cin >> n; }
int Query(int k) {
  cout << "? " << k << endl;
  int res;
  cin >> res;
  return res;
}
int Query_d(int p) { return Query(p + (n >> 1)) - Query(p); }
void Get_ans() {
  int l = 1, r = n >> 1, lv = Query_d(1), rv = Query_d(n >> 1);
  if (!lv) {
    cout << "! " << l << endl;
    return;
  }
  if (!rv) {
    cout << "! " << r << endl;
    return;
  }
  ++l;
  --r;
  for (int mid; l <= r;) {
    mid = l + r >> 1;
    if (!mid) assert(0);
    int mv = Query_d(mid);
    if (!mv) {
      cout << "! " << mid << endl;
      return;
    }
    (mv > 0) == (lv > 0) ? (l = mid + 1, lv = mv) : (r = mid - 1, rv = mv);
  }
  cout << "! -1" << endl;
}
void work() { Get_ans(); }
void outo() {}
int main() {
  int T = 1;
  for (; T--;) {
    into();
    work();
    outo();
  }
  return 0;
}
