Pagini recente » Atasamentele paginii petru_vs_george | Cod sursa (job #219463) | Cod sursa (job #3199082) | Cod sursa (job #64787) | Cod sursa (job #3293055)
// 100 Puncte
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin.tie(0); cin.sync_with_stdio(false);
cin>>n;
int st=1, dr=n, mid=-1, ans=-1, poz=-1;
while (st<=dr) {
mid=(st+dr)/2;
cout<<"? "<<mid<<'\n'; cout.flush();
cin>>ans;
if (ans==0) { //K>x
st=mid+1;
}
else if (ans==1) { //K<=X
poz=mid;
dr=mid-1;
}
else {
return 0;
}
}
cout<<"! "<<poz<<'\n';
cout.flush();
return 0;
}