#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 5;
const long long INF = 1e18;
int main() {
  int n;
  scanf("%d", &n);
  if (n % 4)
    printf("! -1\n"), fflush(stdout);
  else {
    printf("? 1\n");
    fflush(stdout);
    int A;
    scanf("%d", &A);
    printf("? %d\n", 1 + n / 2);
    fflush(stdout);
    int B;
    scanf("%d", &B);
    if (A == B)
      printf("! 1\n"), fflush(stdout);
    else if (A > B) {
      int l = 2, r = n / 2;
      while (l < r) {
        int m = (l + r) / 2;
        printf("? %d\n", m);
        fflush(stdout);
        int C;
        scanf("%d", &C);
        printf("? %d\n", m + n / 2);
        fflush(stdout);
        int D;
        scanf("%d", &D);
        if (C > D)
          l = m + 1;
        else
          r = m;
      }
      printf("! %d\n", l), fflush(stdout);
    } else {
      int l = 2, r = n / 2;
      while (l < r) {
        int m = (l + r) / 2;
        printf("? %d\n", m);
        fflush(stdout);
        int C;
        scanf("%d", &C);
        printf("? %d\n", m + n / 2);
        fflush(stdout);
        int D;
        scanf("%d", &D);
        if (C < D)
          l = m + 1;
        else
          r = m;
      }
      printf("! %d\n", l), fflush(stdout);
    }
  }
  return 0;
}
