1504. Count Submatrices With All Ones
DP
O(m*n*worst(m)) = O(m^2n)如果今天只是1d array...
[1,1,1,1]
那是不是就是 1 + 2 + 3 +4 = 10, 10 種 matrices
所以在某 row 上, 持續看左邊去增長, 如果中間有 0 的, 那就是 0 (斷掉了
row 看左邊完了
那在看上面...所以再跑一個 for 看上面 , 看每個元素值最小多少, 代表可以湊成更多的 matrices, 一樣, 如果中間有 0 就斷掉了
ex:
1 → 0
0 → 0
1 → 1. 中間斷掉了 所以只能算一個
其他向上看的 case
1
1
1 → 代表有三個!1+1+1
2
1
1 → 還是 3 個
python
Last updated
Was this helpful?