For problem statement at 0-999/900-999/920-929/922/problemE.txt this is a correct solution, but verifier at 0-999/900-999/920-929/922/verifierE.go ends with All tests passed can you fix the verifier? package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var n, w, b, x int64
fmt.Fscan(reader, &n, &w, &b, &x)
c := make([]int, n)
for i := 0; i < int(n); i++ {
fmt.Fscan(reader, &c[i])
}
cost := make([]int64, n)
for i := 0; i < int(n); i++ {
fmt.Fscan(reader, &cost[i])
}
dp := make([]int64, 10005)
for i := range dp {
dp[i] = -1
}
dp[0] = w
maxJ := 0
for i := 0; i < int(n); i++ {
if i > 0 {
for j := 0; j <= maxJ; j++ {
if dp[j] != -1 {
dp[j] += x
cap := w + int64(j)*b
if dp[j] > cap {
dp[j] = cap
}
}
}
}
for k := 0; k < c[i]; k++ {
for j := maxJ; j >= 0; j-- {
if dp[j] >= cost[i] {
if dp[j]-cost[i] > dp[j+1] {
dp[j+1] = dp[j] - cost[i]
}
}
}
maxJ++
}
}
ans := 0
for j := 0; j <= maxJ; j++ {
if dp[j] >= 0 {
ans = j
}
}
fmt.Println(ans)
}