For problem statement at 0-999/900-999/970-979/977/problemF.txt this is a correct solution, but verifier at 0-999/900-999/970-979/977/verifierF.go ends with all tests passed can you fix the verifier? ```go
package main
import (
"bufio"
"os"
"strconv"
)
func main() {
scanner := bufio.NewScanner(os.Stdin)
scanner.Split(bufio.ScanWords)
if !scanner.Scan() {
return
}
n, _ := strconv.Atoi(scanner.Text())
a := make([]int, n)
for i := 0; i < n; i++ {
scanner.Scan()
a[i], _ = strconv.Atoi(scanner.Text())
}
dp := make(map[int]int)
maxLen := 0
lastVal := -1
for _, v := range a {
length := dp[v-1] + 1
dp[v] = length
if length > maxLen {
maxLen = length
lastVal = v
}
}
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
out.WriteString(strconv.Itoa(maxLen) + "\n")
res := make([]int, 0, maxLen)
cur := lastVal
for i := n - 1; i >= 0; i-- {
if a[i] == cur {
res = append(res, i+1)
cur--
if len(res) == maxLen {
break
}
}
}
for i := len(res) - 1; i >= 0; i-- {
out.WriteString(strconv.Itoa(res[i]))
if i > 0 {
out.WriteByte(' ')
}
}
out.WriteByte('\n')
}
```