在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。
示例:以左上角為頂點,能否構成正方形。輸入:1 0 1 0 0
1 0 1 1 1
1 1 1 1 1
1 0 0 1 0
輸出: 4
條件是
class
solution
//初始化最下面的行
for(
int i = co -
1; i >=
0; i--
)//當前點能不能圍成正方形,需要看我的右邊,下邊,右下角是什麼情況,前提是當前點matrix為1
/* matrix dp
1 1 1 ? 2 1
1 1 1 ->2 2 1
1 1 1 1 1 1
?處填寫需要滿足三個數相等,或者取最小的,這樣才能滿足圍成正方形的條件
*///遍歷從右往左,從下往上
for(
int i = row -
2; i >=
0; i--)}
max = math.
max(max, dp[i]
[j]);}
}return max * max;
}}
leetcode 96/100 LeetCode221 最大正方形
在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。示例 輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 4 動態規劃問題。設二維陣列dp m n 其中dp i j 表示以座標 i,j 為右下角元素的最大正方形的邊長。通過觀...
Leetcode 221 最大正方形
在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。示例 輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 4 思路 和最大長方形類似 可以參照不過每次的max換位長和寬中選取最小值,算他們的平方 提交的 class solu...
LeetCode 221 最大正方形
題目描述 在乙個由 0 和 1 組成的二維矩陣內,找到只包含 1 的最大正方形,並返回其面積。輸入 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 輸出 4 思路 本題需要返回矩陣中最大的正方形面積,計算正方形面積只要知道邊長即可。申請乙個跟matrix矩陣維度相同的...