#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define double long double
#define print(a) for(auto x : a) cout << x << " "; cout << endl
const int M = 1000000007;
const int N = 3e5+9;
const int INF = 2e9+1;
const int LINF = 2000000000000000001;
inline int power(int a, int b, int mod=M) {
int x = 1;
a %= mod;
while (b) {
if (b & 1) x = (x * a) % mod;
a = (a * a) % mod;
b >>= 1;
}
return x;
}
//_ ***************************** START Below *******************************
//* Change this to false => before submitting to cf
// bool testing = true;
bool testing = false;
vector<int> a = {INF, 2, 4, 3, 7, 10, 11, 1, 9, 8, 6, 5};
int interactor(int i){
return a[i];
}
//* n = 11
//* [ inf 2 4 3 7 10 11 1 9 8 6 5 inf ]
int askQuery(int x){
cout << "? " << x << endl;
if(testing){
cout << interactor(x) << endl;
return interactor(x);
}
int y;
cin >> y;
return y;
}
int consistency(){
int n;
cin >> n;
int s = 1, e = n;
int ans = -1;
while(s<=e){
int mid = s + (e-s)/2;
int res = askQuery(mid);
int left = mid-1 == 0 ? INF : askQuery(mid-1);
int right = mid+1 == n+1 ? INF : askQuery(mid+1);
if(left > res && res < right){
ans = mid;
break;
}
if(left > res ){
s = mid+1;
}
else{
e = mid-1;
}
}
return ans;
}
void solve() {
int ans = consistency();
cout << "! " << ans << endl;
}
int32_t main() {
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
solve();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50ICAgICAgICAgICAgICBsb25nIGxvbmcgaW50CiNkZWZpbmUgZG91YmxlICAgICAgICAgICBsb25nIGRvdWJsZQojZGVmaW5lIHByaW50KGEpICAgICAgICAgZm9yKGF1dG8geCA6IGEpIGNvdXQgPDwgeCA8PCAiICI7IGNvdXQgPDwgZW5kbAoKCmNvbnN0IGludCBNID0gMTAwMDAwMDAwNzsKY29uc3QgaW50IE4gPSAzZTUrOTsKY29uc3QgaW50IElORiA9IDJlOSsxOwpjb25zdCBpbnQgTElORiA9IDIwMDAwMDAwMDAwMDAwMDAwMDE7CgppbmxpbmUgaW50IHBvd2VyKGludCBhLCBpbnQgYiwgaW50IG1vZD1NKSB7CiAgICBpbnQgeCA9IDE7CiAgICBhICU9IG1vZDsKICAgIHdoaWxlIChiKSB7CiAgICAgICAgaWYgKGIgJiAxKSB4ID0gKHggKiBhKSAlIG1vZDsgCiAgICAgICAgYSA9IChhICogYSkgJSBtb2Q7CiAgICAgICAgYiA+Pj0gMTsKICAgIH0KICAgIHJldHVybiB4Owp9CgoKLy9fICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNUQVJUIEJlbG93ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCi8vKiBDaGFuZ2UgdGhpcyB0byBmYWxzZSA9PiBiZWZvcmUgc3VibWl0dGluZyB0byBjZgovLyBib29sIHRlc3RpbmcgPSB0cnVlOyAKYm9vbCB0ZXN0aW5nID0gZmFsc2U7CgoKdmVjdG9yPGludD4gYSA9IHtJTkYsIDIsIDQsIDMsIDcsIDEwLCAxMSwgMSwgOSwgOCwgNiwgNX07CgppbnQgIGludGVyYWN0b3IoaW50IGkpewogICAgcmV0dXJuIGFbaV07Cn0KCi8vKiAgICBuID0gMTEKLy8qICBbICBpbmYgICAyICAgNCAgIDMgICA3ICAxMCAgMTEgIDEgIDkgICA4ICAgNiAgIDUgICBpbmYgICBdCgoKaW50IGFza1F1ZXJ5KGludCB4KXsKICAgIGNvdXQgPDwgIj8gIiA8PCB4IDw8IGVuZGw7CgogICAgaWYodGVzdGluZyl7CiAgICAgICAgY291dCA8PCBpbnRlcmFjdG9yKHgpIDw8IGVuZGw7CiAgICAgICAgcmV0dXJuIGludGVyYWN0b3IoeCk7CiAgICB9CiAgICBpbnQgeTsKICAgIGNpbiA+PiB5OwogICAgcmV0dXJuIHk7Cgp9CgoKaW50IGNvbnNpc3RlbmN5KCl7CgogICAgaW50IG47CiAgICBjaW4gPj4gbjsKCgogICAgaW50IHMgPSAxLCBlID0gbjsKICAgIGludCBhbnMgPSAtMTsKCiAgICB3aGlsZShzPD1lKXsKICAgICAgICBpbnQgbWlkID0gcyArIChlLXMpLzI7CgoKICAgICAgICBpbnQgcmVzID0gYXNrUXVlcnkobWlkKTsKICAgICAgICBpbnQgbGVmdCA9IG1pZC0xID09IDAgPyBJTkYgOiBhc2tRdWVyeShtaWQtMSk7CiAgICAgICAgaW50IHJpZ2h0ID0gbWlkKzEgPT0gbisxID8gSU5GIDogYXNrUXVlcnkobWlkKzEpOwoKICAgICAgICBpZihsZWZ0ID4gcmVzICYmIHJlcyA8IHJpZ2h0KXsKICAgICAgICAgICAgYW5zID0gbWlkOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYobGVmdCA+IHJlcyApewogICAgICAgICAgICBzID0gbWlkKzE7CiAgICAgICAgfQogICAgICAgIGVsc2V7CiAgICAgICAgICAgIGUgPSBtaWQtMTsKICAgICAgICB9CgogICAgfQoKICAgIHJldHVybiBhbnM7Cn0KCgoKCgoKCgp2b2lkIHNvbHZlKCkgewoKICAgIGludCBhbnMgPSBjb25zaXN0ZW5jeSgpOwogICAgY291dCA8PCAiISAiIDw8IGFucyA8PCBlbmRsOwoKfQoKCgoKCmludDMyX3QgbWFpbigpIHsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7IGNpbi50aWUoMCk7IGNvdXQudGllKDApOwoKICAgIHNvbHZlKCk7CgogICAgcmV0dXJuIDA7Cn0=