博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LeetCode – Refresh – Largest Rectangle in Histogram
阅读量:6036 次
发布时间:2019-06-20

本文共 864 字,大约阅读时间需要 2 分钟。

Use two vector to record left and right indexes that can extend the blocks.

 

1 class Solution { 2 public: 3     int largestRectangleArea(vector
&height) { 4 int len = height.size(), result = 0; 5 vector
left(len), right(len); 6 for (int i = 0; i < len; i++) { 7 left[i] = i; 8 while (left[i] > 0 && height[i] <= height[left[i]-1]) left[i] = left[left[i]-1]; 9 }10 for (int i = len-1; i >= 0; i--) {11 right[i] = i;12 while (right[i] < len-1 && height[i] <= height[right[i]+1]) right[i] = right[right[i]+1];13 }14 for (int i = 0; i < len; i++) {15 result = max(result, height[i] * (right[i] - left[i] + 1));16 }17 return result;18 }19 };

 

转载于:https://www.cnblogs.com/shuashuashua/p/4352662.html

你可能感兴趣的文章
学习CSS的思路(转)
查看>>
Micropython TPYBoard V10X拼插编程实践之定时器 代码不精通?...
查看>>
thrift TTransport
查看>>
Grunt
查看>>
文件系统,快存储,对象存储
查看>>
Java判断对象类型是否为数组
查看>>
lucene创建索引
查看>>
【css】设置div位于浏览器的最底层,离用户最远
查看>>
python 基础复习 03
查看>>
Spark学习之基于MLlib的机器学习
查看>>
微信支付v3开发(5) 扫码并输入金额支付
查看>>
Android菜鸟的成长笔记(28)——Google官方对Andoird 2.x提供的ActionBar支持
查看>>
java值类型和引用类型
查看>>
oracle 创建视图、修改视图、删除视图、利用视图操作基本表
查看>>
WPF 自定义TextBox带水印控件,可设置圆角
查看>>
localStorage和sessionStorage
查看>>
Android 四种启动模式 已看晕
查看>>
《面向模式的软件体系结构4-分布式计算的模式语言》读书笔记(1)--- 从混沌到结构(1)...
查看>>
iphone 如何将数据存储到plist(属性列表文件)中
查看>>
thrift-TFileTransport
查看>>