【C++】LeetCode 85. Maximal Rectangle
来源:互联网 发布:农产品直销网络 编辑:程序博客网 时间:2024/05/21 09:56
题目:
Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing only 1's and return its area.
For example, given the following matrix:
1 0 1 0 01 0 1 1 11 1 1 1 11 0 0 1 0Return 6.
思路:
这一题参考84题(http://blog.csdn.net/lv1224/article/details/72461540)的思路。矩形每一列可以看做一个柱状图。
用动态规划,每一行调用84题程序,即可求解。
代码:
/*参考84题 LeetCode 84. Largest Rectangle in Histogram*/class Solution {public: int largestRectangleArea(vector<int>& heights) { stack<int> index; int maxarea=0; int i=0; while(!index.empty()||i<heights.size()) { if(index.empty()||(i<heights.size()&&heights[i]>heights[index.top()])) { index.push(i++); } else { int temp=heights[index.top()]; index.pop(); maxarea=max(maxarea,temp*(i-(index.empty()?0:index.top()+1))); } } return maxarea; } int maximalRectangle(vector<vector<char>>& matrix) { if(matrix.size()==0||matrix[0].size()==0)return 0; vector<int> heights(matrix[0].size(),0); int res=0; for(int i=0;i<matrix.size();i++) { for(int j=0;j<matrix[0].size();j++) { if(matrix[i][j]=='0')heights[j]=0; else heights[j]+=1; } res=max(res,largestRectangleArea(heights)); } return res; }};
阅读全文
0 0
- 【C++】LeetCode 85. Maximal Rectangle
- 【LeetCode】【C++】Maximal Rectangle
- LeetCode 85. Maximal Rectangle
- [Leetcode] 85. Maximal Rectangle
- LeetCode --- 85. Maximal Rectangle
- [LeetCode]*85.Maximal Rectangle
- [leetcode] 85.Maximal Rectangle
- Leetcode 85. Maximal Rectangle
- leetcode 85. Maximal Rectangle
- LeetCode 85. Maximal Rectangle
- Leetcode 85. Maximal Rectangle
- Leetcode:85. Maximal Rectangle
- LeetCode 85. Maximal Rectangle
- LeetCode-85.Maximal Rectangle
- leetcode.85. Maximal Rectangle
- leetcode 85. Maximal Rectangle
- Leetcode 85. Maximal Rectangle
- [LeetCode] 85. Maximal Rectangle
- 虚幻4C++编程入门(搬运2)
- [k8s]gosu使用
- H5开发:搭建 AngularJS+Ionic+Cordova 开发环境
- echarts圆环百分比图示
- 获得InputStream,读取配置文件的方式
- 【C++】LeetCode 85. Maximal Rectangle
- Struts 下载,上传
- [leetcode]Super Washing Machines
- Struts2学习笔记
- C++11 图说VS2013下的引用叠加规则和模板参数类型推导规则
- squid
- 总结一下遇到的各种核函数~
- C++string中用于查找的find系列函数浅析
- PHP那些琐碎的知识点