Cod sursa(job #3139841)
Utilizator | Data | 2 iulie 2023 09:54:55 | |
---|---|---|---|
Problema | Cbinteractiv | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.28 kb |
#include <iostream>
using namespace std;
int step=1<<30,n,ans,k;
int K(){if(ans<=step)return 0;cout<<"? "<<ans-step<<'\n';cout.flush();cin>>k;return k;}
int main()
{
cin>>n;ans=n;
for(;step;step>>=1)ans-=K()*step;
cout<<"! "<<ans<<'\n';cout.flush();
return 0;
}