leetcode (top100)接雨水

题目:

题解:

可以把每个宽度看作一个桶,每个桶能接的水等于这个桶左右两个方向最高桶的最小高度再减去这个桶本身的高度。把每个桶能接的水相加即可。

难点在于如何快速找到当前桶的左右两个方向的最高桶的高度,可以先遍历一遍数组找出前缀最大值,和后缀最大值,前位置左右最高桶的高度就为当前位置的前缀最大值和后缀最大值。

int trap(vector<int>& height) {int arr[height.size()];int brr[height.size()];for(int i=0;i<height.size();i++){if(!i){arr[i]=height[i];}else{arr[i]=max(arr[i-1],height[i]);}}for(int i=height.size()-1;i>=0;i--){if(i==height.size()-1){brr[i]=height[i];}else{brr[i]=max(height[i],brr[i+1]);}}int ans=0;for(int i=0;i<height.size();i++){ans+=min(arr[i],brr[i])-height[i];}return ans;}

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

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

相关文章

数据库物理计划执行指南

一、背景介绍 伴随信息技术地迅猛发展和应用范围地逐步扩大&#xff0c;数据库已成为企业存储与管理数据的重要工具。但数据量激增以及用户访问需求的与日剧增&#xff0c;数据库性能也将面临巨大挑战。 好在数据库物理计划执行是解决数据库性能问题的重要手段之一&#xff0…

IMP和引用码 位置关系

基础类搭建 IMP和引用码位置 无限制 取决于&#xff08;&#xff08;地址转发机制&#xff09;组 分析&#xff09; 地址(消息)转发机制&#xff1a;1.子层IMP可由父层内引用码触发2.子层IMP可由子层内引用码触发 3.父层IMP可由子层内引用码触发4.父层IMP可由父层内引用码触发…

【技巧】Leetcode 201. 数字范围按位与【中等】

数字范围按位与 给你两个整数 left 和 right &#xff0c;表示区间 [left, right] &#xff0c;返回此区间内所有数字 按位与 的结果&#xff08;包含 left 、right 端点&#xff09;。 示例 1&#xff1a; 输入&#xff1a;left 5, right 7 输出&#xff1a;4 解题思路 …

【面试实战】# 并发编程

1.线程状态 请解释 Java 中线程的几种状态&#xff0c;并描述每种状态的特点和转换条件。 NEW&#xff08;新建&#xff09;&#xff1a;线程被创建&#xff0c;但尚未启动。RUNNABLE&#xff08;可运行&#xff09;&#xff1a;线程正在运行&#xff0c;可能在执行代码&#x…

Maria/Mysql部署时远程连不上主机

‘主机’ is not allowed to connect to this MariaDB . 原因是设置为仅本机登录。 以root用户登录 -- 使用mysql库 use mysql; -- 查看可以登录的用户 select host,user,password from user; -- 修改root可以在任意主机登录(注意user) update user set host % where user r…

看门狗 WDG

嵌入式软件中的看门狗&#xff08;Watchdog Timer, WDT&#xff09;是一种监控机制&#xff0c;用于确保系统在出现故障时能够自动恢复正常运行。它通常由硬件定时器和相应的软件组成&#xff0c;当系统中的软件没有在预定时间内喂狗&#xff08;即重置定时器&#xff09;时&am…

Ansible Automation Platform(RHAAP2)架构中的四种节点及配置

在清单文件inventory中配置 #自动化控制节点设置 [automationcontroller] example.com #默认为混合节点 control.example node_typecontrol #作为控制节点&#xff0c;仅负责自动化的平台运行 hybrid.example node_typehybrid #作为混合节点&#xff0c;即是自动化平台又是任…

手机号码的校验

手机号码的校验 手机号码的校验应用的场景还是很多的&#xff0c;也随处可见&#xff0c;下面就记录几个校验方法 const emptyTip 请输入; // 必选项为空 const patternTip 请输入正确的; // 格式错误 // 联系电话校验&#xff08;固话手机&#xff09; /(^0\d{2,3}-?\d{7,8…

服务器数据恢复—KVM虚拟机被误删除如何恢复虚拟磁盘文件?

服务器数据恢复环境&故障&#xff1a; 1台服务器&#xff0c;Linux操作系统EXT4文件系统&#xff0c;部署了数台KVM虚拟机&#xff0c;每台虚拟机包含一个qcow2格式的磁盘文件&#xff0c;和一个raw格式的磁盘文件。 工作人员操作失误删除了3台服务器上的KVM虚拟机&#xf…

一站式的ITO服务,涵盖了业务流程外包(BPO)、IDC驻场运维以及IDC工程实施等三大类别

在信息技术日新月异的今天&#xff0c;企业对于信息技术服务外包&#xff08;ITO服务&#xff09;的需求日益增加。联通作为领先的通信服务提供商&#xff0c;凭借其在信息技术领域的深厚积累&#xff0c;为客户提供了一站式的ITO服务&#xff0c;涵盖了业务流程外包&#xff0…

13.4 内存管理

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

【课程系列04】某客时间AI大模型应用开发实战营

网盘链接 https://pan.baidu.com/s/1blR1eIMDIIp6AbxU4YaK9w 课程收获 "AI大模型应用开发实战营"是一个为期八周的在线课程&#xff0c;旨在教授学员如何开发和应用AI大模型。课程内容从基础理论到实际应用&#xff0c;逐步深入&#xff0c;覆盖了以下要点&#x…

python发邮件给多人的注意事项?如何群发?

python发邮件给多人的效率如何&#xff1f;python发邮件的方法&#xff1f; 在利用Python编程语言实现邮件群发功能时&#xff0c;需要注意许多细节&#xff0c;以确保邮件能有效送达且用户体验良好。AokSend将详细探讨python发邮件给多人时需要注意的各个方面&#xff0c;以帮…

Python邮件加密传输如何实现?有哪些技巧?

Python邮件怎么设置服务器&#xff1f;如何使用Python发送邮件&#xff1f; 为了确保邮件内容在传输过程中不被窃听或篡改&#xff0c;使用加密传输是必不可少的。在使用Python邮件传输时&#xff0c;加密传输是保障信息安全的关键手段。AokSend将详细探讨Python邮件加密传输的…

【C++提高编程-10】----C++ STL常用拷贝和替换算法

&#x1f3a9; 欢迎来到技术探索的奇幻世界&#x1f468;‍&#x1f4bb; &#x1f4dc; 个人主页&#xff1a;一伦明悦-CSDN博客 ✍&#x1f3fb; 作者简介&#xff1a; C软件开发、Python机器学习爱好者 &#x1f5e3;️ 互动与支持&#xff1a;&#x1f4ac;评论 &…

【Python】类和对象的深入解析

目录 前言 什么是类&#xff1f; 定义一个类 创建对象 访问和修改属性 方法 类的继承 多态 封装 特殊方法 属性装饰器 总结 前言 Python 是一种面向对象的编程语言&#xff0c;它允许程序员通过类和对象来组织和管理代码。面向对象编程&#xff08;OOP&#xff09…

高通平台添加设备驱动流程

高通平台添加驱动如下&#xff1a; ----------- kernel/msm-3.18/arch/arm/boot/dts/qcom/msm-pmi8950.dtsi ----------- index a714654..d6c2c57 100644 -192,7 192,13 mppa300 { reg <0xa300 0x100>; qcom,pin-nu…

力扣每日一题(2024-6-18)2288. 价格减免

本文章是对官方题解的补充说明 原题链接&#xff1a;2288. 价格减免 思路 由题目中的“单词之间用单个空格分隔”和 “如果单词的形式为美元符号后跟着一个非负实数&#xff0c;那么这个单词就表示一个 价格 。” 可知&#xff1a; 首先要通过 ‘space’把原字符串进行切分&…

PHP 标准建议psr

PSR-1: Basic Coding Standard&#xff08;基础编码标准&#xff09; PSR-1 定义了PHP代码文件的基本编写规范&#xff0c;它关注的是代码文件的结构和一些通用的编程约定&#xff0c;主要包括&#xff1a; 文件命名&#xff1a;PHP文件必须以.php为后缀。PHP标签&#xff1a…

智慧校园的构建要素是什么

在当今数字时代&#xff0c;智慧校园的构建已成为教育界的热门话题。随着技术的不断进步&#xff0c;学校不再只是传统的教学场所&#xff0c;而是一个充满智能化和创新的环境。那么&#xff0c;智慧校园的构建要素究竟是什么呢&#xff1f; 基础设施建设 高速、稳定的网络覆…