#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;
void hack(int n){
a.resize(n+1);
for(int i=1; i<=n; i++) cin >> a[i];
}
int interactor(int i){
return a[i];
}
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){
if(testing){
hack(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 n;
cin >> n;
int ans = consistency(n);
cout << "! " << ans << endl;
}
int32_t main() {
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int t = 1;
// cin >> t;
while(t--){
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50ICAgICAgICAgICAgICBsb25nIGxvbmcgaW50CiNkZWZpbmUgZG91YmxlICAgICAgICAgICBsb25nIGRvdWJsZQojZGVmaW5lIHByaW50KGEpICAgICAgICAgZm9yKGF1dG8geCA6IGEpIGNvdXQgPDwgeCA8PCAiICI7IGNvdXQgPDwgZW5kbAoKCmNvbnN0IGludCBNID0gMTAwMDAwMDAwNzsKY29uc3QgaW50IE4gPSAzZTUrOTsKY29uc3QgaW50IElORiA9IDJlOSsxOwpjb25zdCBpbnQgTElORiA9IDIwMDAwMDAwMDAwMDAwMDAwMDE7CgppbmxpbmUgaW50IHBvd2VyKGludCBhLCBpbnQgYiwgaW50IG1vZD1NKSB7CiAgICBpbnQgeCA9IDE7CiAgICBhICU9IG1vZDsKICAgIHdoaWxlIChiKSB7CiAgICAgICAgaWYgKGIgJiAxKSB4ID0gKHggKiBhKSAlIG1vZDsgCiAgICAgICAgYSA9IChhICogYSkgJSBtb2Q7CiAgICAgICAgYiA+Pj0gMTsKICAgIH0KICAgIHJldHVybiB4Owp9CgoKLy9fICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFNUQVJUIEJlbG93ICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKCi8vKiBDaGFuZ2UgdGhpcyB0byBmYWxzZSA9PiBiZWZvcmUgc3VibWl0dGluZyB0byBjZgovLyBib29sIHRlc3RpbmcgPSB0cnVlOyAKYm9vbCB0ZXN0aW5nID0gZmFsc2U7CgoKdmVjdG9yPGludD4gYTsKCnZvaWQgaGFjayhpbnQgbil7CiAgICBhLnJlc2l6ZShuKzEpOwogICAgZm9yKGludCBpPTE7IGk8PW47IGkrKykgY2luID4+IGFbaV07Cn0KCmludCAgaW50ZXJhY3RvcihpbnQgaSl7CiAgICByZXR1cm4gYVtpXTsKfQoKCgppbnQgYXNrUXVlcnkoaW50IHgpewogICAgY291dCA8PCAiPyAiIDw8IHggPDwgZW5kbDsKCiAgICBpZih0ZXN0aW5nKXsKICAgICAgICBjb3V0IDw8IGludGVyYWN0b3IoeCkgPDwgZW5kbDsKICAgICAgICByZXR1cm4gaW50ZXJhY3Rvcih4KTsKICAgIH0KICAgIGludCB5OwogICAgY2luID4+IHk7CiAgICByZXR1cm4geTsKCn0KCgppbnQgY29uc2lzdGVuY3koaW50IG4pewoKICAgIGlmKHRlc3RpbmcpewogICAgICAgIGhhY2sobik7CiAgICB9CgogICAgaW50IHMgPSAxLCBlID0gbjsKICAgIGludCBhbnMgPSAtMTsKCiAgICB3aGlsZShzPD1lKXsKICAgICAgICBpbnQgbWlkID0gcyArIChlLXMpLzI7CgoKICAgICAgICBpbnQgcmVzID0gYXNrUXVlcnkobWlkKTsKICAgICAgICBpbnQgbGVmdCA9IG1pZC0xID09IDAgPyBJTkYgOiBhc2tRdWVyeShtaWQtMSk7CiAgICAgICAgaW50IHJpZ2h0ID0gbWlkKzEgPT0gbisxID8gSU5GIDogYXNrUXVlcnkobWlkKzEpOwoKICAgICAgICBpZihsZWZ0ID4gcmVzICYmIHJlcyA8IHJpZ2h0KXsKICAgICAgICAgICAgYW5zID0gbWlkOwogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICAgICAgaWYobGVmdCA+IHJlcyApewogICAgICAgICAgICBzID0gbWlkKzE7CiAgICAgICAgfQogICAgICAgIGVsc2V7CiAgICAgICAgICAgIGUgPSBtaWQtMTsKICAgICAgICB9CgogICAgfQoKICAgIHJldHVybiBhbnM7Cn0KCgoKCgoKCgp2b2lkIHNvbHZlKCkgewogICAgaW50IG47CiAgICBjaW4gPj4gbjsKCiAgICBpbnQgYW5zID0gY29uc2lzdGVuY3kobik7CiAgICBjb3V0IDw8ICIhICIgPDwgYW5zIDw8IGVuZGw7Cgp9CgoKCgoKaW50MzJfdCBtYWluKCkgewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgY2luLnRpZSgwKTsgY291dC50aWUoMCk7CgogICAgaW50IHQgPSAxOwogICAgLy8gY2luID4+IHQ7CiAgICB3aGlsZSh0LS0pewogICAgICAgIHNvbHZlKCk7CiAgICB9CgoKICAgIHJldHVybiAwOwp9