For problem statement at 1000-1999/1700-1799/1760-1769/1764/problemG2.txt this is a correct solution, but verifier at 1000-1999/1700-1799/1760-1769/1764/verifierG2.go ends with wrong answer on test 1: expected 1 got 0
exit status 1 can you fix the verifier? package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var n int
fmt.Fscan(reader, &n)
ask := func(l, r, k int) int {
if l > r {
return 0
}
fmt.Printf("? %d %d %d\n", l, r, k)
var res int
fmt.Fscan(reader, &res)
return res
}
l, r := 1, n
for l < r {
mid := (l + r) / 2
q1 := ask(1, mid, 2)
q2 := ask(mid+1, n, 2)
split := q1 + q2 - (n/2 + 1)
if (mid-split)%2 != 0 {
r = mid
} else {
l = mid + 1
}
}
fmt.Printf("! %d\n", l)
}