For problem statement at 1000-1999/1800-1899/1810-1819/1814/problemC.txt this is a correct solution, but verifier at 1000-1999/1800-1899/1810-1819/1814/verifierC.go ends with case 1 mismatch
expected:2 1 3101 2
3 2 6 1103 4 3 5
got:2 1 3
1 2
3 2 6 1
3 4 3 5
input:
2
3 1 2
19 2 17
6 2 2
11 20 13 15 3 15
exit status 1 can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
"sort"
)
type pair struct {
r int
idx int
}
func main() {
in := bufio.NewReader(os.Stdin)
var t int
fmt.Fscan(in, &t)
for _ = range make([]int, t) {
var n, s1, s2 int
fmt.Fscan(in, &n, &s1, &s2)
r := make([]pair, n)
for i := 0; i < n; i++ {
var val int
fmt.Fscan(in, &val)
r[i] = pair{val, i + 1}
}
sort.Slice(r, func(i, j int) bool {
if r[i].r != r[j].r {
return r[i].r > r[j].r
}
return r[i].idx < r[j].idx
})
var vecA, vecB []int
for _, p := range r {
ca := int64(len(vecA)+1) * int64(s1)
cb := int64(len(vecB)+1) * int64(s2)
if ca <= cb {
vecA = append(vecA, p.idx)
} else {
vecB = append(vecB, p.idx)
}
}
fmt.Print(len(vecA))
for _, x := range vecA {
fmt.Print(" ", x)
}
fmt.Println()
fmt.Print(len(vecB))
for _, x := range vecB {
fmt.Print(" ", x)
}
fmt.Println()
}
}
```