#include <bits/stdc++.h>
using namespace std;
using ll=long long;
int main(){
    int n;cin>>n;
    int l=0;int r=n-1;
    bool right=false,left=false;
    cout<<'?'<<" "<<l+1<<" "<<r+1<<"\n";
    cout.flush();
    int sh;cin>>sh;
    if(n==2) cout<<'!'<<" "<<n-sh+1;
    else{
int csh;
    if(sh>1){
    cout<<'?'<<" "<<1<<" "<<sh<<"\n";
    cout.flush();
    cin>>csh;
    if(csh==sh) {r=sh-1;left=true;}
    else {l=sh-1;right=true;}}
    else  {l=sh-1;right=true;}
    bool ans=true;
    while(ans){
        if(left){
            int m=(l+r)/2;
            if(l==m) {ans=false;break;}
            cout<<'?'<<" "<<m+1<<" "<<sh<<"\n";
            cout.flush();
            cin>>csh;
            if(csh==sh) {l=m;}
            else r=m;

        }
        else{
            int m=(l+r)/2;
            if((l+r)%2!=0) m++;
            if(r==m) {ans=false;l=m;break;}
            cout<<'?'<<" "<<sh<<" "<<m+1<<"\n";
            cout.flush();
            cin>>csh;
            if(csh==sh) {r=m;}
            else l=m;

        }

    }
    cout<<'!'<<" "<<l+1;}}