leetcode - Largest Rectangle in Histogram
2013-04-23 23:04
337 查看
题目描述:点击此处
此题需要仔细想想才知道怎么做,而且几个判断的地方使用乘法会溢出
此题需要仔细想想才知道怎么做,而且几个判断的地方使用乘法会溢出
class Solution { public: int largestRectangleArea(vector<int> &height) { // Start typing your C/C++ solution below // DO NOT write int main() function int n = height.size(); if (n<=0) return 0; int * hgt = new int ; int i = 0, j; bool * flag = new bool ; for (vector<int>::iterator ii = height.begin(); ii!=height.end(); ii++){ hgt[i] = *ii; flag[i] = false; i++; } int rlt = 0; for (i=0; i<n; i++){ if (flag[i]) continue; if (rlt/(n-i) >= hgt[i]) continue; int minH = hgt[i]; int area = hgt[i]; for (j=i+1; j<n; j++){ if (hgt[j] >= minH){ area += minH; } else{ flag[j] = true; if (area>rlt) rlt = area; if (hgt[j]<=rlt/(n-i)) break; minH = hgt[j]; area = hgt[j]*(j-i+1); } } if (area>rlt) rlt = area; } return rlt; } };
相关文章推荐
- [Leetcode] Largest Rectangle in Histogram (Java)
- leetcode 84 Largest Rectangle in Histogram
- [Leetcode] Largest Rectangle in Histogram
- LeetCode之“动态规划”:Maximal Square && Largest Rectangle in Histogram && Maximal Rectangle
- LeetCode - Largest Rectangle in Histogram
- [LeetCode]Largest Rectangle in Histogram
- [LeetCode] Largest Rectangle in Histogram
- LeetCode 84 (Largest Rectangle in Histogram)java
- LeetCode84 Largest Rectangle in Histogram 解题报告
- [LeetCode] 040: Largest Rectangle in Histogram
- [LeetCode] Largest Rectangle in Histogram
- [LeetCode40]Largest Rectangle in Histogram
- LeetCode(84) Largest Rectangle in Histogram
- LeetCode--largest-rectangle-in-histogram
- leetcode - Largest Rectangle in Histogram
- Largest Rectangle in Histogram leetcode java
- [LeetCode]Largest Rectangle in Histogram
- leetcode — largest-rectangle-in-histogram
- [LeetCode] Largest Rectangle in Histogram
- [leetcode]Largest Rectangle in Histogram