Pagini recente » Diferente pentru problema/cern intre reviziile 9 si 6 | Cod sursa (job #3213002) | Cod sursa (job #1008309) | Cod sursa (job #301308) | Cod sursa (job #2750833)
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
int guess = 0;
int step = (1 << 30);
for(; step > 0; step /= 2)
{
int nguess = guess + step;
if(nguess > n)
continue;
printf("? %d\n", nguess);
fflush(stdout);
int answer;
scanf("%d", &answer);
if(answer == 0)
guess = nguess;
}
printf("! %d\n", guess);
fflush(stdout);
return 0;
}