using System; namespace No253{ public class Program{ public static void Main(string[] args){ Func ask = x =>{ Console.WriteLine($"? {x}"); return int.Parse(Console.ReadLine().Split(' ')[0]); }; var t = ask(30); if(t == 0){ Console.WriteLine($"! 30"); return; } if(t == -1){ var i = 0; for(; i < 30; i++){ if(ask(0) == 0) break; } Console.WriteLine($"! {i + 1}"); return; } if(t == 1){ var left = 0; var right = 1000000001; var cnt = 1; while(left < right){ cnt++; var mid = (left + right) / 2; var quest = ask(mid - cnt); if(quest == 0){ left = mid; break; } if(quest == -1){ right = mid; } if(quest == 1){ left = mid + 1; } } Console.WriteLine($"! {left - 1}"); return; } } } }