#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1.0);
int n;
void binary(int l, int r, int fl, int fr) {
  if (l == r) {
    printf("! %d\n", l);
    fflush(stdout);
    return;
  }
  int mid = (l + r) / 2, fm, f1, f2;
  printf("? %d\n", mid);
  fflush(stdout);
  scanf("%d", &f1);
  printf("? %d\n", (mid + n / 2 - 1) % n + 1);
  fflush(stdout);
  scanf("%d", &f2);
  fm = f1 - f2;
  if (fm == 0) {
    printf("! %d\n", mid);
    fflush(stdout);
    return;
  }
  if (fl * fm < 0)
    binary(l, mid, fl, fm);
  else
    binary(mid, r, fm, fr);
}
int main() {
  while (~scanf("%d", &n)) {
    if (n % 4) {
      printf("! -1\n");
      fflush(stdout);
    } else {
      int f1, fn2;
      printf("? 1\n");
      fflush(stdout);
      scanf("%d", &f1);
      printf("? %d\n", n / 2 + 1);
      fflush(stdout);
      scanf("%d", &fn2);
      if (f1 == fn2) {
        printf("! 1\n");
        fflush(stdout);
      } else
        binary(1, n / 2 + 1, f1 - fn2, fn2 - f1);
    }
  }
}
