For problem statement at 0-999/300-399/300-309/303/problemC.txt this is a correct solution, but verifier at 0-999/300-399/300-309/303/verifierC.go ends with All 100 tests passed can you fix the verifier? package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var n, k int
if _, err := fmt.Fscan(reader, &n, &k); err != nil {
return
}
a := make([]int, n)
for i := 0; i < n; i++ {
fmt.Fscan(reader, &a[i])
}
maxLimit := 1000000
C := make([]int, maxLimit+5)
for i := 0; i < n; i++ {
for j := i + 1; j < n; j++ {
d := a[i] - a[j]
if d < 0 {
d = -d
}
C[d]++
}
}
maxE := k * (k + 1) / 2
seen := make([]int, maxLimit+5)
token := 0
for m := 1; m <= maxLimit+1; m++ {
E := 0
for j := m; j <= maxLimit; j += m {
E += C[j]
}
if E <= maxE {
token++
rem := 0
for _, val := range a {
mod := val % m
if seen[mod] != token {
seen[mod] = token
rem++
}
}
if n-rem <= k {
fmt.Println(m)
return
}
}
}
}