package main import "fmt" func main() { solve() } func ask(x int) int { fmt.Println("?", x) var y int fmt.Scan(&y) return y } func solve() { lb := -1 ub := 1000000000 if ask(99)==-1{ for i:=1; i<100; i++{ if ask(0)==0{ fmt.Println("!", i) return } } } for i := 1; i < 100; i++ { mid := (lb + ub) / 2 ans := ask(mid-i) if ans == -1 { ub = mid } if ans == 1 { lb = mid } if ans == 0 { fmt.Println("!", mid) return } } fmt.Println("!", lb+1) return }