For problem statement at 1000-1999/1300-1399/1310-1319/1312/problemE.txt this is a correct solution, but verifier at 1000-1999/1300-1399/1310-1319/1312/verifierE.go ends with All 100 tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var n int
if _, err := fmt.Fscan(reader, &n); err != nil {
return
}
a := make([]int, n)
for i := 0; i < n; i++ {
fmt.Fscan(reader, &a[i])
}
dp := make([][]int, n)
for i := 0; i < n; i++ {
dp[i] = make([]int, n)
for j := 0; j < n; j++ {
dp[i][j] = -1
}
dp[i][i] = a[i]
}
for L := 2; L <= n; L++ {
for i := 0; i <= n-L; i++ {
j := i + L - 1
for k := i; k < j; k++ {
if dp[i][k] != -1 && dp[i][k] == dp[k+1][j] {
dp[i][j] = dp[i][k] + 1
break
}
}
}
}
minLen := make([]int, n+1)
for i := 1; i <= n; i++ {
minLen[i] = 1e9
}
minLen[0] = 0
for i := 1; i <= n; i++ {
for j := 1; j <= i; j++ {
if dp[j-1][i-1] != -1 {
if minLen[j-1]+1 < minLen[i] {
minLen[i] = minLen[j-1] + 1
}
}
}
}
fmt.Println(minLen[n])
}
```