#include <bits/stdc++.h>
using namespace std;
int h[100100];
int n;
void ask(int x) {
  cout << "? " << x << endl;
  cout << "? " << x + n / 2 << endl;
  cin >> h[x] >> h[x + n / 2];
  if (h[x] == h[x + n / 2]) {
    cout << "! " << x << endl;
    exit(0);
  }
}
int main() {
  cin >> n;
  ask(1);
  if ((h[1] - h[1 + n / 2]) % 2 != 0) {
    cout << "! -1" << endl;
    return 0;
  }
  int init_dif = h[1] - h[1 + n / 2];
  int lf = 1, rg = 1 + n / 2;
  while (lf + 1 < rg) {
    int mid = (lf + rg) / 2;
    ask(mid);
    int cur_dif = h[mid] - h[mid + n / 2];
    if (init_dif < 0) {
      if (cur_dif < 0) {
        lf = mid;
      } else {
        rg = mid;
      }
    } else {
      if (cur_dif < 0) {
        rg = mid;
      } else {
        lf = mid;
      }
    }
  }
  cout << "! -1" << endl;
  return 0;
}
