leetcode---Maximal Square---动规
2016-12-06 21:29
155 查看
Given a 2D binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its area.
For example, given the following matrix:
Return 4.
For example, given the following matrix:
1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0
Return 4.
class Solution { public: int maximalSquare(vector<vector<char>>& matrix) { int n = matrix.size(); if(n == 0) return 0; int m = matrix[0].size(); int dp [m]; int ms = 0; for(int i=0; i<n; i++) { dp[i][0] = matrix[i][0] - '0'; ms = max(ms, dp[i][0]); } for(int j=0; j<m; j++) { dp[0][j] = matrix[0][j] - '0'; ms = max(ms, dp[0][j]); } for(int i=1; i<n; i++) { for(int j=1; j<m; j++) { if(matrix[i][j] == '1') { int k = min(dp[i-1][j-1], min(dp[i-1][j], dp[i][j-1])); dp[i][j] = k + 1; } else { dp[i][j] = 0; } ms = max(ms, dp[i][j]); } } return ms * ms; } };
相关文章推荐
- LeetCode Maximal Square
- 【动态规划】leetcode - Maximal Square
- leetcode之maximal square
- Leetcode Maximal Square
- Maximal Square Leetcode Java
- LeetCode Maximal Square
- leetcode Maximal Square
- LeetCode Maximal Square
- [LeetCode] Maximal Square
- [LeetCode]Maximal Square
- LeetCode 221 Maximal Square 题解
- leetcode221 Maximal Square
- leetcode: Largest Rectangle in Histogram,Maximal Square,Maximal Square问题
- Leetcode--221--Maximal Square
- LeetCode-Maximal Square-解题报告
- leetCode_Maximal Square
- LeetCode221:Maximal Square
- Maximal Square leetcode
- 算法分析与设计课程(14):【leetcode】 Maximal Square
- Maximal Square -- leetcode