#include <bits/stdc++.h>
using namespace std;
#define faster ios_base::sync_with_stdio(false) ; cin.tie(NULL)
const int INF= 1e6 + 7;
const int N = 1e5 + 7;
int a[N] , n;
void inp(){
cin >> n;
}
int ask(int id){
if (id < 1 || id > n) return INF;
if (a[id] != 0) return a[id];
cout << "? " << id << '\n';
cout.flush();
int res;
cin >> res;
a[id] = res;
return a[id];
}
void solve(){
int l = 1 , r = n , mid;
while (l <= r){
mid = (l + r) >> 1;
int Mid = ask(mid) , L = ask(mid - 1) , R = ask(mid + 1);
if (Mid < L && Mid < R){
cout << "! " << mid << '\n';
cout.flush();
return;
}
if (Mid > L){
r = mid - 1;
}
else if (Mid > R){
l = mid + 1;
}
}
}
int main(){
faster;
inp();
solve();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgZmFzdGVyIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpIDsgY2luLnRpZShOVUxMKQoKY29uc3QgaW50IElORj0gMWU2ICsgNzsKY29uc3QgaW50IE4gPSAxZTUgKyA3OwppbnQgYVtOXSAsIG47CnZvaWQgaW5wKCl7CiAgICBjaW4gPj4gbjsKfQoKaW50IGFzayhpbnQgaWQpewogICAgaWYgKGlkIDwgMSB8fCBpZCA+IG4pIHJldHVybiBJTkY7CiAgICBpZiAoYVtpZF0gIT0gMCkgcmV0dXJuIGFbaWRdOwoKICAgIGNvdXQgPDwgIj8gIiA8PCBpZCA8PCAnXG4nOwogICAgY291dC5mbHVzaCgpOwoKICAgIGludCByZXM7CiAgICBjaW4gPj4gcmVzOwogICAgYVtpZF0gPSByZXM7CiAgICByZXR1cm4gYVtpZF07Cn0KCnZvaWQgc29sdmUoKXsKICAgIGludCBsID0gMSAsIHIgPSBuICwgbWlkOwogICAgd2hpbGUgKGwgPD0gcil7CiAgICAgICAgbWlkID0gKGwgKyByKSA+PiAxOwogICAgICAgIGludCBNaWQgPSBhc2sobWlkKSAsIEwgPSBhc2sobWlkIC0gMSkgLCBSID0gYXNrKG1pZCArIDEpOwogICAgICAgIGlmIChNaWQgPCBMICYmIE1pZCA8IFIpewogICAgICAgICAgICBjb3V0IDw8ICIhICIgPDwgbWlkIDw8ICdcbic7CiAgICAgICAgICAgIGNvdXQuZmx1c2goKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZiAoTWlkID4gTCl7CiAgICAgICAgICAgIHIgPSBtaWQgLSAxOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmIChNaWQgPiBSKXsKICAgICAgICAgICAgbCA9IG1pZCArIDE7CiAgICAgICAgfQogICAgfQp9CgppbnQgbWFpbigpewogICAgZmFzdGVyOwogICAgaW5wKCk7CiAgICBzb2x2ZSgpOwogICAgcmV0dXJuIDA7Cn0KCg==