← Home
For problem statement at 1000-1999/1600-1699/1680-1689/1689/problemD.txt this is a correct solution, but verifier at 1000-1999/1600-1699/1680-1689/1689/verifierD.go ends with test 7 failed
input:
1
5 5
WWWBW
WWWWB
WBWWW
WWWWW
WWWWW
expected: 1 1
got: 2 3

exit status 1 can you fix the verifier? ```go
package main

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

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	scanner.Split(bufio.ScanWords)
	writer := bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	scanInt := func() int {
		scanner.Scan()
		val, _ := strconv.Atoi(scanner.Text())
		return val
	}

	scanStr := func() string {
		scanner.Scan()
		return scanner.Text()
	}

	if !scanner.Scan() {
		return
	}
	t, _ := strconv.Atoi(scanner.Text())

	for i := 0; i < t; i++ {
		n := scanInt()
		m := scanInt()

		minS, maxS := 100000000, -100000000
		minD, maxD := 100000000, -100000000

		for r := 0; r < n; r++ {
			row := scanStr()
			for c, char := range row {
				if char == 'B' {
					s := r + c
					d := r - c
					if s < minS {
						minS = s
					}
					if s > maxS {
						maxS = s
					}
					if d < minD {
						minD = d
					}
					if d > maxD {
						maxD = d
					}
				}
			}
		}

		bestDist := 100000000
		ansR, ansC := 1, 1

		for r := 0; r < n; r++ {
			for c := 0; c < m; c++ {
				s := r + c
				d := r - c

				distS := s - minS
				if val := maxS - s; val > distS {
					distS = val
				}

				distD := d - minD
				if val := maxD - d; val > distD {
					distD = val
				}

				curMax := distS
				if distD > curMax {
					curMax = distD
				}

				if curMax < bestDist {
					bestDist = curMax
					ansR = r + 1
					ansC = c + 1
				}
			}
		}
		fmt.Fprintln(writer, ansR, ansC)
	}
}
```