28 lines
516 B
Go
28 lines
516 B
Go
// Package q3070 implements a solution for https://leetcode.com/problems/count-submatrices-with-top-left-element-and-sum-less-than-k/
|
|
package q3070
|
|
|
|
func countSubmatrices(grid [][]int, k int) int {
|
|
cnt := 0
|
|
for r := range grid {
|
|
for c := 1; c < len(grid[0]); c++ {
|
|
grid[r][c] += grid[r][c-1]
|
|
}
|
|
}
|
|
|
|
for r := range grid {
|
|
for c := range grid[0] {
|
|
if r > 0 {
|
|
grid[r][c] += grid[r-1][c]
|
|
}
|
|
|
|
if grid[r][c] <= k {
|
|
cnt++
|
|
} else {
|
|
break
|
|
}
|
|
}
|
|
}
|
|
return cnt
|
|
}
|
|
|
|
var _ = countSubmatrices
|