← Home
For problem statement at 1000-1999/1200-1299/1220-1229/1225/problemE.txt this is a correct solution, but verifier at 1000-1999/1200-1299/1220-1229/1225/verifierE.go ends with case 6: expected 0 got 2

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

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

const MOD = int64(1e9 + 7)

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	scanner.Split(bufio.ScanWords)
	scanner.Scan()
	n := atoi(scanner.Text())
	scanner.Scan()
	m := atoi(scanner.Text())

	grid := make([]string, n)
	for i := 0; i < n; i++ {
		scanner.Scan()
		grid[i] = scanner.Text()
	}

	if n == 1 && m == 1 {
		fmt.Println(1)
		return
	}

	rowRocks := make([]int, n)
	colRocks := make([]int, m)

	for i := 0; i < n; i++ {
		for j := 0; j < m; j++ {
			if grid[i][j] == 'R' {
				rowRocks[i]++
				colRocks[j]++
			}
		}
	}

	dp := make([][]int64, n)
	for i := 0; i < n; i++ {
		dp[i] = make([]int64, m)
	}
	dp[0][0] = 1

	for i := 0; i < n; i++ {
		for j := 0; j < m; j++ {
			if i == 0 && j == 0 {
				continue
			}
			var ways int64 = 0
			if i > 0 && i <= n-colRocks[j] {
				ways += dp[i-1][j]
			}
			if j > 0 && j <= m-rowRocks[i] {
				ways += dp[i][j-1]
			}
			dp[i][j] = ways % MOD
		}
	}

	fmt.Println(dp[n-1][m-1] % MOD)
}

func atoi(s string) int {
	v := 0
	for _, ch := range s {
		v = v*10 + int(ch-'0')
	}
	return v
}
```