leetcode 221 Maximal Square
2016-06-23 15:16
309 查看
Given a 2D binary matrix filled with 0's and 1's, find the largest square containing all 1's and return its area.
For example, given the following matrix:
Return 4.
Credits:
Special thanks to @Freezen for adding this problem and creating all test cases.
Subscribe to see which companies asked this question
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.
Credits:
Special thanks to @Freezen for adding this problem and creating all test cases.
Subscribe to see which companies asked this question
class Solution { public: int maximalSquare(vector<vector<char>>& matrix) { int n = matrix.size(); if(n == 0) return 0; int m = matrix[0].size(); int res = 0; vector<vector<int>> dp(n, vector<int>(m, 0)); for(int i = 0; i < n; i++) { for(int j=0; j < m; j++) { dp[i][j] = matrix[i][j]-'0'; if(dp[i][j] == 1) res=1; } } for(int i=1; i < n; i++) { for(int j=1; j < m; j++) { if(matrix[i][j]=='0') continue; dp[i][j] = min(min(dp[i-1][j], dp[i][j-1]), dp[i-1][j-1])+1; if(dp[i][j] > res) { res = dp[i][j]; } } } return res*res; } };
相关文章推荐
- Socket.IO简述
- UVA - 1599(BFS求最优路)
- iOS开发经验总结1
- PID控制理論(2)-P control
- RemoteViews的应用
- Java源码-任意字符的Unicode查询
- Android studio 开发者信息设置
- jQuery全选/反选checkbox
- 已经迁移到简书写作了
- SVN打基线
- 二叉树的递归实现(先,中,后)
- BZOJ3060: [Poi2012]Tour de Byteotia
- 使用UITextFiled收回键盘的几种方法
- Linux上安装Python的PIL和Pillow库处理图片的实例教程
- JavaEE_SAX
- jQuery练习一好友列表变色
- Python-S13作业-day1-之登陆程序
- 第13周 关于二叉树的遍历方法
- In Gradle projects, always use http://schemas.android.com/apk/res-auto for custom attributes
- android TextView 垂直自动滚动