← Home
For problem statement at 1000-1999/1600-1699/1690-1699/1692/problemH.txt this is a correct solution, but verifier at 1000-1999/1600-1699/1690-1699/1692/verifierH.go ends with All tests passed. can you fix the verifier? ```go
package main

import (
	"bufio"
	"fmt"
	"os"
)

func main() {
	in := bufio.NewReader(os.Stdin)
	var t int
	fmt.Fscan(in, &t)
	for _ = range make([]int, t) {
		var n int
		fmt.Fscan(in, &n)
		x := make([]int, n+1)
		for i := 1; i <= n; i++ {
			fmt.Fscan(in, &x[i])
		}
		pos := make(map[int][]int)
		for i := 1; i <= n; i++ {
			pos[x[i]] = append(pos[x[i]], i)
		}
		var globalMax int64 = -1 << 60
		var bestA, bestL, bestR int
		for v, list := range pos {
			num := len(list)
			if num == 0 { continue }
			p := make([]int, num+1)
			for i := 1; i <= num; i++ {
				p[i] = list[i-1]
			}
			var maxA int64 = -1 << 60
			var bestJ int
			for k := 1; k <= num; k++ {
				a := int64(p[k]) - 2 * int64(k)
				if a > maxA {
					maxA = a
					bestJ = k
				}
				b := 2 * int64(k) - int64(p[k])
				cand := b + maxA + 1
				if cand > globalMax {
					globalMax = cand
					bestA = v
					bestL = p[bestJ]
					bestR = p[k]
				}
			}
		}
		fmt.Println(bestA, bestL, bestR)
	}
}
```