For problem statement at 1000-1999/1900-1999/1930-1939/1933/problemD.txt this is a correct solution, but verifier at 1000-1999/1900-1999/1930-1939/1933/verifierD.go ends with All tests passed can you fix the verifier? package main
import (
"bufio"
"os"
)
type FastReader struct {
r *bufio.Reader
}
func NewFastReader(r *bufio.Reader) *FastReader {
return &FastReader{r: r}
}
func (fr *FastReader) NextInt() int64 {
sign := int64(1)
var val int64 = 0
c, err := fr.r.ReadByte()
for err == nil && c <= ' ' {
c, err = fr.r.ReadByte()
}
if err != nil {
return 0
}
if c == '-' {
sign = -1
c, err = fr.r.ReadByte()
if err != nil {
return 0
}
}
for err == nil && c > ' ' {
val = val*10 + int64(c-'0')
c, err = fr.r.ReadByte()
}
return val * sign
}
func main() {
r := bufio.NewReaderSize(os.Stdin, 1<<20)
w := bufio.NewWriterSize(os.Stdout, 1<<20)
defer w.Flush()
rd := NewFastReader(r)
t := int(rd.NextInt())
for ; t > 0; t-- {
n := int(rd.NextInt())
arr := make([]int64, n)
var minVal int64
cnt := 0
for i := 0; i < n; i++ {
v := rd.NextInt()
arr[i] = v
if i == 0 || v < minVal {
minVal = v
cnt = 1
} else if v == minVal {
cnt++
}
}
if cnt == 1 {
w.WriteString("YES\n")
continue
}
ok := false
for i := 0; i < n; i++ {
if arr[i]%minVal != 0 {
ok = true
break
}
}
if ok {
w.WriteString("YES\n")
} else {
w.WriteString("NO\n")
}
}
}