#include <bits/stdc++.h>
using namespace std;
int n;
int ans[100009];
int ask(int i) {
  if (ans[i]) return ans[i];
  cout << "? " << i << endl;
  fflush(stdout);
  cin >> ans[i];
  return ans[i];
}
signed main() {
  cin >> n;
  n >>= 1;
  int pre = ask(1) - ask(1 + n);
  int l = 1, r = n, gue;
  while (r - l > 1 && pre > 0 && gue) {
    int mid = (l + r) >> 1;
    gue = ask(mid) - ask(mid + n);
    if (gue > 0)
      l = mid;
    else
      r = mid;
  }
  while (r - l > 1 && pre < 0 && gue) {
    int mid = (l + r) >> 1;
    gue = ask(mid) - ask(mid + n);
    if (gue > 0)
      r = mid;
    else
      l = mid;
  }
  if (ask(l) == ask(l + n))
    cout << "! " << l;
  else if (ask(r) == ask(r + n))
    cout << "! " << r;
  else
    cout << "! -1";
  fflush(stdout);
}
