#include <bits/stdc++.h>
using namespace std;
int n;
int pos(int x) { return 1 + ((x - 1) % n); }
int main() {
  cin >> n;
  if ((n / 2) & 1) {
    cout << "! -1" << endl;
    return 0;
  }
  pair<int, int> p1, p2, p3;
  p1.first = 1;
  p2.first = n / 2;
  int s11, s12, s21, s22;
  cout << "? " << p1.first << endl;
  cin >> s11;
  cout << "? " << pos(p1.first + n / 2) << endl;
  cin >> s12;
  cout << "? " << p2.first << endl;
  cin >> s21;
  cout << "? " << pos(p2.first + n / 2) << endl;
  cin >> s22;
  p1.second = s11 - s12;
  p2.second = s21 - s22;
  for (int b = 20; b > 0; b--) {
    if (p1 == p2) break;
    p3.first = (p1.first + p2.first) / 2;
    int s31, s32;
    cout << "? " << p3.first << endl;
    cin >> s31;
    cout << "? " << pos(p3.first + n / 2) << endl;
    cin >> s32;
    p3.second = s31 - s32;
    if (p3.second * p1.second <= 0) {
      p2 = p3;
    } else {
      p1 = p3;
    }
    if (p1.second == 0)
      p2 = p1;
    else if (p2.second == 0)
      p1 = p2;
  }
  cout << "! " << p1.first << endl;
  return 0;
}
