【难】【DP】计算“skyline”下的最大矩形面积
来源:互联网 发布:网络搞笑歌曲你是谁 编辑:程序博客网 时间:2024/04/29 02:00
题目:EPI
int calculate_largest_rectangle(const vector<int> &A){if (A.empty())return -1;stack<int> s;vector<int> left(A.size());vector<int> right(A.size());//计算左边边界for (int i = 0; i < A.size(); i++){while (!s.empty() && A[s.top()] >= A[i])s.pop();//s.empty()时,表示左边没有限制,可以一直到A[0]left[i] = s.empty() ? 0 : s.top() + 1;s.push(i);}while (!s.empty())s.pop();//计算右边边界for (int i = A.size() - 1; i >= 0; i--){while (!s.empty() && A[s.top()] >= A[i])s.pop();//s.empty()时,表示右边没有限制,可以一直到A[A.size()-1]right[i] = s.empty() ? A.size() - 1 : s.top() - 1;s.push(i);}//计算最大矩阵int max = -1;for (int i = 0; i < A.size(); i++){//A[i]是矩阵的高,right[i] - left[i] + 1是矩阵的宽(沿数轴)int tmp = A[i] * (right[i] - left[i] + 1);if (tmp > max)max = tmp;}return max;}
0 0
- 【难】【DP】计算“skyline”下的最大矩形面积
- 1102 面积最大的矩形(简单DP)
- HDU1505(最大矩形面积+DP)
- 面积最大的矩形
- 面积最大的矩形
- 面积最大的矩形
- 51Nod Problem 1102 面积最大的矩形(DP)
- 每天一道LeetCode-----计算直方图中最大矩形的面积
- 九度1497(最大矩形面积+DP)
- 最大的连续矩形面积
- 1102 面积最大的矩形
- [Happy DSA] 求解直方图下的最大矩形面积
- 【难】【DP】计算bool矩阵中,仅包含1的最大矩形和最大正方形
- HDU 1056 Largest Rectangle in a Histogram(dp)(求最大的矩形面积)
- 寻找直方图中面积最大的矩形
- 寻找直方图中面积最大的矩形
- 寻找直方图中面积最大的矩形
- 寻找直方图中面积最大的矩形
- 5.Java NIO系列教程之通道之间的数据传输
- OC之多线程
- [Leetcode]Valid Parentheses
- 心得
- 基于VMware的虚拟机资源池实现(下)-运营资源池
- 【难】【DP】计算“skyline”下的最大矩形面积
- wpf inkcanvas customink 毛笔效果
- 应用框架的设计与实现.net平台--内存跨领域组件--内存操作
- Set Matrix Zeroes|leetcode题解
- Centos 7 设置默认启动命令窗口以及网卡设置
- Cocos2d-x内存管理
- LightOJ 1422 Halloween Costumes(区间DP)
- c# 中DevExpress的安装
- Java虚拟机(三):垃圾收集方式-分代,复制,标记整理算法