For problem statement at 0-999/600-699/610-619/616/problemE.txt this is a correct solution, but verifier at 0-999/600-699/610-619/616/verifierE.go ends with All tests passed can you fix the verifier? package main
import (
"bufio"
"fmt"
"os"
)
const MOD int64 = 1000000007
func main() {
in := bufio.NewReader(os.Stdin)
var n, m int64
fmt.Fscan(in, &n, &m)
limit := n
if m < n {
limit = m
}
total := (n % MOD) * (m % MOD) % MOD
sum := calc(n, limit)
ans := total - sum
if ans < 0 {
ans += MOD
}
fmt.Println(ans)
}
func calc(n, limit int64) int64 {
var sum int64 = 0
i := int64(1)
inv2 := (MOD + 1) / 2
for i <= limit {
k := n / i
last := n / k
if last > limit {
last = limit
}
length := last - i + 1
a := (i%MOD + last%MOD) % MOD
b := length % MOD
sum_i := a * b % MOD
sum_i = sum_i * inv2 % MOD
term := (k % MOD) * sum_i % MOD
sum += term
if sum >= MOD {
sum -= MOD
}
i = last + 1
}
return sum
}