For problem statement at 1000-1999/1500-1599/1550-1559/1552/problemD.txt this is a correct solution, but verifier at 1000-1999/1500-1599/1550-1559/1552/verifierD.go ends with All 100 tests passed can you fix the verifier? package main
import (
"bufio"
"fmt"
"os"
)
func main() {
in := bufio.NewReaderSize(os.Stdin, 1<<20)
out := bufio.NewWriterSize(os.Stdout, 1<<20)
defer out.Flush()
var t int
fmt.Fscan(in, &t)
for ; t > 0; t-- {
var n int
fmt.Fscan(in, &n)
a := make([]int, n)
for i := 0; i < n; i++ {
fmt.Fscan(in, &a[i])
}
total := 1
for i := 0; i < n; i++ {
total *= 3
}
ok := false
for mask := 1; mask < total && !ok; mask++ {
x := mask
sum := 0
for i := 0; i < n; i++ {
d := x % 3
x /= 3
if d == 1 {
sum += a[i]
} else if d == 2 {
sum -= a[i]
}
}
if sum == 0 {
ok = true
}
}
if ok {
fmt.Fprintln(out, "YES")
} else {
fmt.Fprintln(out, "NO")
}
}
}