← Home
For problem statement at 1000-1999/1200-1299/1200-1209/1209/problemE1.txt this is a correct solution, but verifier at 1000-1999/1200-1299/1200-1209/1209/verifierE1.go ends with case 1 failed
input:
1
4 2
9 16
4 10
2 3
3 19
expected:
66

got:
54

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

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

func max(a, b int) int {
	if a > b {
		return a
	}
	return b
}

func main() {
	in := bufio.NewReader(os.Stdin)
	var t int
	fmt.Fscan(in, &t)
	for i := 0; i < t; i++ {
		var n, m int
		fmt.Fscan(in, &n, &m)
		a := make([][]int, n)
		for i := 0; i < n; i++ {
			a[i] = make([]int, m)
			for j := 0; j < m; j++ {
				fmt.Fscan(in, &a[i][j])
			}
		}
		current := make(map[[4]int]struct{})
		var zero [4]int
		current[zero] = struct{}{}
		for j := 0; j < m; j++ {
			newCurrent := make(map[[4]int]struct{})
			for r := range current {
				for k := 0; k < n; k++ {
					var v [4]int
					for i := 0; i < n; i++ {
						p := (i - k + n) % n
						v[i] = a[p][j]
					}
					var newr [4]int
					for i := 0; i < n; i++ {
						newr[i] = max(r[i], v[i])
					}
					for i := n; i < 4; i++ {
						newr[i] = 0
					}
					newCurrent[newr] = struct{}{}
				}
			}
			current = newCurrent
		}
		var ans int
		for r := range current {
			s := 0
			for i := 0; i < n; i++ {
				s += r[i]
			}
			if s > ans {
				ans = s
			}
		}
		fmt.Println(ans)
	}
}
```