leetCode.84. 柱状图中最大的矩形

leetCode.84. 柱状图中最大的矩形


题目思路
在这里插入图片描述


代码

class Solution {
public:int largestRectangleArea( vector<int>& h ) {int n = h.size();vector<int> left( n ), right( n );stack<int> st;// 求每个矩形的第一个小于左边界的矩形 - 用单调栈for ( int i = 0; i < n; ++i ) {while ( st.size() && h[st.top()] >= h[i] ) st.pop();if ( st.empty() ) left[i] = -1;else left[i] = st.top();st.push( i );}// 求每个矩形的第一个小于右边界的矩形 - 用单调栈st = stack<int>(); // 清空栈for ( int i = n - 1; i >= 0; --i ) {while ( st.size() && h[st.top()] >= h[i] ) st.pop();if( st.empty() ) right[i] = n;else right[i] = st.top();st.push( i );}// 遍历维护 最大值int ret = 0;for (int i = 0; i < n; ++i) ret = max( ret, (right[i] - left[i] - 1) * h[i] );return ret;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/17380.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

颠仆流离学二叉树1 (Java版)

本篇会加入个人的所谓鱼式疯言 ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. &#x1f92d;&#x1f92d;&#x1f92d;可能说的不是那么严谨.但小编初心是能让更多人…

数码论坛|基于SprinBoot+vue的数码论坛系统(源码+数据库+文档)

数码论坛系统 目录 基于SprinBootvue的数码论坛系统 一、前言 二、系统设计 三、系统功能设计 1系统功能模块 2 管理员功能模块 3 用户后台管理模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&am…

盲人心理辅导课程:心灵的引路人

在这个快节奏的社会中&#xff0c;技术的每一次跃进都在悄然改变着人们的生活方式&#xff0c;尤其对于盲人群体&#xff0c;一款名为“蝙蝠避障”的辅助软件成为了他们探索世界的得力助手。通过实时避障与拍照识别功能&#xff0c;“蝙蝠避障”不仅保障了盲人朋友的日常安全&a…

学习java第八十三天

Spring中Bean的作用域&#xff1f; 1.singleton&#xff08;单例&#xff09;&#xff08;默认的&#xff09;&#xff1a;在整个应用中只创建一个Bean实例&#xff0c;并在容器启动时就创建&#xff0c;以后每次请求都返回同一个实例。 2.prototype&#xff08;原型&#xf…

java配置文件解析yml/xml/properties文件

XML 以mybatis.xml:获取所有Environment中的数据库并连接session为例 import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException;import javax.xml.parsers.DocumentBuilder; impo…

【Docker|漏洞】Docker api未授权导致rce

一、漏洞描述 扫描出http://ip地址:4243漏洞&#xff0c;该漏洞可通过Docker pai未授权访问可以直接执行命令&#xff0c;获取服务器权限。 二、解决方案 禁用Docker api远程访问功能&#xff0c;或者通过安全授权等方式限制其使用权限。升级duoker至最新版本。 三、漏洞排查…

一款220V降12V恒压芯片电路原理图WT5114

一款220V降12V恒压芯片电路原理图WT5114&#xff0c;电路图简示如下&#xff1a; 一款220V降12V恒压芯片线路图WT5114 WT5114是一款高性能、高精度、低成本的PWM电源开关&#xff0c;适用于非隔离降压和反激式应用。它集成了专用电流模式PWM控制器&#xff08;采用SOP8封装的高…

2.8万字总结:金融核心系统数据库升级路径与场景实践

OceanBase CEO 杨冰 谈及数字化转型&#xff0c;如果说过去还只是头部金融机构带动效应下的“选择题”。那么现在&#xff0c;我相信数字化转型已经成为不论大、中、小型金融机构的“必答题”。 本文为OceanBase最新发布的《万字总结&#xff1a;金融核心系统数据库升级路径…

ubuntu安全加固

知识背景&#xff1a; 项目背景&#xff1a; 常用命令&#xff1a; useradd: adduser: getent passwd: getent group: id username: adduser newname sudo: 修改shell为/bin/bash 新用户默认为/bin/sh&#xff0c;可以通过echo $SHELL查询&#xff0c;默认不能使用TAB…

js处理服务器响应Blob对象格式文件处理

js验证http请求返回数据data是否为blob格式&#xff1a; // 验证是否为blob格式 export async function blobValidate(data) {try {const text await data.text();JSON.parse(text);return false;} catch (error) {return true;} }使用场景&#xff1a; import { saveAs } f…

QT加载CAD文件(二)LibreCAD源码编译

一、LibreCAD LibreCAD是一个开源软件&#xff0c;不用破解激活&#xff0c;可以打开编辑DXF格式的文档&#xff0c;软件大小只有二十多M&#xff0c;对于一些比较简单的图纸还是可以胜任的。本文主要讲该软件源码编译。如果了解软件的基本使用可以参考https://blog.csdn.net/…

Vulnhub靶机 whowantsobeking :1 打靶 渗透详细过程(萌新)

Vulnhub靶机搭建配置 先搭建vulnhub靶机&#xff1a;https://www.vulnhub.com/entry/who-wants-to-be-king-1,610/ 下载镜像之后whowantsobeking.ova后&#xff0c;用VMware Workstation Pro打开依次点击文件-打开&#xff0c;选择我们刚才下载的ova文件打开&#xff0c;修改…

【小米手环7】表盘制作指南

2024年了还有人用小米手环7么&#xff1f; 目录 表盘.bin文件情况介绍表盘文件修改/制作教程1、表盘.bin文件组成介绍2、表盘.bin文件获取3、制作表盘的必备工具4、表盘.bin文件修改step 1 模拟器设置step 2 修改app.jsonstep 3 修改index.jsstep 4 更新.bin文件 参考文献 表盘…

全网首发!精选32个最新计算机毕设实战项目(附源码),拿走就用!

Hi 大家好&#xff0c;马上毕业季又要开始了&#xff0c;陆陆续续又要准备毕业设计了&#xff0c;有些学生轻而易举就搞定了&#xff0c;有些学生压根没有思路怎么做&#xff0c;可能是因为技术问题&#xff0c;也可能是因为经验问题。 计算机毕业相关的设计最近几年类型比较多…

新修订的《中华人民共和国保守国家秘密法》新增和修改的内容不包括( )

新修订的《中华人民共和国保守国家秘密法》新增和修改的内容不包括&#xff08; &#xff09; 完整答案查看 A.旗帜鲜明将党的领导写入法律B.加快提升保密科技创新能力 C.把保密宣传教育摆到重要位置 D.细化商业秘密保密管理 新修订的《中华人民共和国保守国家秘密法》明确涉及…

为什么Facebook Marketplace无法使用?如何解决?

Facebook Marketplace是一个允许用户买卖商品的平台&#xff0c;由于其在Facebook内的便捷性&#xff0c;它逐渐成为了一个受欢迎的在线交易市场。然而&#xff0c;做Facebook跨境电商&#xff0c;很多人会面临的情况就是无法使用Facebook Marketplace。这到底是什么原因&#…

C语言经典例题-3

1.汉诺塔问题 //汉诺塔问题&#xff08;递归实现&#xff09; //思路&#xff1a;1.将A中n-1个盘子放入B中&#xff0c;剩下最后一个&#xff08;第n个&#xff09;盘子放入C中。2.将B中n-1个盘子放入A中&#xff0c;剩下最后一个&#xff08;第n个&#xff09;放入C中。#incl…

WordPress建网站公司 建易WordPress建站

建易WordPress建网站公司是一家专业从事WordPress网站建设、网站维护、网站托管、运营推广和搜索引擎优化(SEO)等服务的公司。建易WordPress建网站公司提供多种服务&#xff0c;包括模板建站和定制网站&#xff0c;并且明码标价&#xff0c;价格透明&#xff0c;竭诚为全国各地…

广告案例全解码:让你的品牌广告效果翻倍的分析技巧

进行广告案例分析是一个系统化的过程&#xff0c;它可以帮助你深入理解广告活动的各个方面&#xff0c;包括目标、策略、执行和效果。 以下是进行广告案例分析的十大步骤&#xff1a; 1. 确定广告案例的关键问题&#xff1a; 识别案例中的主要问题和挑战&#xff0c;这将是你…