For problem statement at 2000-2999/2000-2099/2050-2059/2056/problemF1.txt this is a correct solution, but verifier at 2000-2999/2000-2099/2050-2059/2056/verifierF1.go ends with All 37 tests passed. can you fix the verifier? package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
writer := bufio.NewWriter(os.Stdout)
defer writer.Flush()
var t int
if _, err := fmt.Fscan(reader, &t); err != nil {
return
}
for tc := 0; tc < t; tc++ {
var k, m int
fmt.Fscan(reader, &k, &m)
var s string
fmt.Fscan(reader, &s)
w := 0
for i := 0; i < len(s); i++ {
if s[i] == '1' {
w++
}
}
S := make([][]int, w+1)
for i := 0; i <= w; i++ {
S[i] = make([]int, w+1)
}
S[0][0] = 1
for i := 1; i <= w; i++ {
for j := 1; j <= i; j++ {
S[i][j] = (S[i-1][j-1] + (j%2)*S[i-1][j]) % 2
}
}
ans := 0
for x := 0; x < m; x++ {
fx := 0
for r := 1; r <= w; r++ {
if (x & (r - 1)) == (r - 1) {
fx ^= S[w][r]
}
}
if fx == 1 {
ans ^= x
}
}
fmt.Fprintln(writer, ans)
}
}