Python | Leetcode Python题解之第42题接雨水

news2024/9/21 22:39:16

题目:

题解:

class Solution:
    def trap(self, height: List[int]) -> int:
        if not height:
            return 0
        
        n = len(height)
        leftMax = [height[0]] + [0] * (n - 1)
        for i in range(1, n):
            leftMax[i] = max(leftMax[i - 1], height[i])

        rightMax = [0] * (n - 1) + [height[n - 1]]
        for i in range(n - 2, -1, -1):
            rightMax[i] = max(rightMax[i + 1], height[i])

        ans = sum(min(leftMax[i], rightMax[i]) - height[i] for i in range(n))
        return ans

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

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

相关文章

5.Vue项目目录结构

Vue项目目录结构 我们通过Vue命令行工具 npm init vuelatest 创建项目,会出现很多文件及文件夹 .vscode --- VSCode工具的配置文件夹 node_modules --- Vue项目的运行依赖文件夹 public --- 资源文件夹(浏览器图标) src ---…

关于某次授权的大型内网渗透测试(1)

前期渗透: 打点:(任意文件上传) 直接发现头像处任意文件上传,这里直接上传冰蝎即可。 tasklist查看杀软 System Idle Process 0 N/A System …

5.11 mybatis之returnInstanceForEmptyRow作用

文章目录 1. 当returnInstanceForEmptyRowtrue时2 当returnInstanceForEmptyRowfalse时 mybatis的settings配置中有个属性returnInstanceForEmptyRow,该属性新增于mybatis的3.4.2版本,低于此版本不可用。该属性的作用官方解释为:当返回行的所…

npm的配置文件及其路径问题

如何快捷修改.npmrc配置文件? .npmrc文件,就是npm的配置文件所在位置。 当然,寻找这个文件的目的,多数是为了修改.npmrc文件内容。 但npm提供了方便快捷的修改方式,不知道这个文件的位置,其实也是可以修改…

数据赋能(63)——要求:IT部门职责

“要求:IT部门职责”是作为标准的参考内容编写的。 在数据赋能中,IT部门职责在于以提供原始数据核心,确保提供原始数据是真实、及时和完整性,以支持业务赋能的实现。 在数据赋能中,IT部门职责涉及多个方面&#xff0c…

LeetCode刷题总结 | 图论2—深度优先搜索广度优先搜索较为复杂应用

深搜广搜的标准模版在图论1已经整理过了,也整理了几个标准的套模板的题目,这一小节整理一下较为复杂的DFS&BFS应用类问题。 417 太平洋大西洋水流问题(medium) 有一个 m n 的矩形岛屿,与 太平洋 和 大西洋 相邻…

Kafka入门介绍+集群部署+简单使用

Kafka入门介绍集群部署简单使用 简介核心概念Broker(服务节点/实例)Producer(生产者)Topic(主题)Partition(分区)Consumer(消费者)和Consumer Group&#xff…

Java 笔记 03:Java 基础知识,使用 IDEA 创建 Java 项目、设置注释颜色,以及自动生成 JavaDoc

一、前言 记录时间 [2024-04-21] 系列文章简摘: Java 笔记 01:Java 概述,MarkDown 常用语法整理 Java 笔记 02:Java 开发环境的搭建,IDEA / Notepad / JDK 安装及环境配置,编写第一个 Java 程序 本文讲述了…

中国人的谦逊与生俱来

中国人的谦逊是与生俱来的,我们从老子的《道德经》就能探知一二: 一、不自夸、不自傲 《道德经》原文:自见者不明;自是者不彰;自伐者无功;自矜者不长。(第二十四章) 译文&#xff…

【深度学习】写实转漫画——CycleGAN原理解析

1、前言 上一篇,我们讲解了按照指定文本标签生成对应图像的CGAN。本篇文章,我们讲CycleGAN。这个模型可以对图像风格进行转化,并且训练还是在非配对的训练集上面进行的,实用性挺大 原论文:Unpaired Image-to-Image T…

Matlab|含sop的配电网重构(含风光|可多时段拓展)

目录 1 主要内容 2 部分程序 3 下载链接 1 主要内容 之前分享了很多配电网重构的程序,每个程序针对场景限定性比较大,程序初学者修改起来难度较大,本次分享一个基础程序,针对含sop的配电网重构模型,含风电和光伏&am…

FPGA - 基于自定义AXI FULL总线的PS和PL交互

前言 在FPGA - ZYNQ 基于Axi_Lite的PS和PL交互中,介绍了基于基于AXi_Lite的PL和PS交互,接下来构建基于基于Axi_Lite的PS和PL交互。 AXI_GP、AXI_HP和AXI_ACP接口 首先看一下ZYNQ SoC的系统框图,如下图所示。在图中,箭头方向代表…

【LeetCode】100、相同的树

100、相同的树 文章目录 一、DFS1.1 DFS 二、多语言解法 一、DFS 因为判断【相同的树】,是一个公用的子问题,所以可以递归判断节点的左、右孩子。 1.1 DFS func isSameTree(p *TreeNode, q *TreeNode) bool {if p nil && q nil {return tru…

2024蓝桥杯嵌入式模板代码详解

文章目录 一、STM32CubeMx配置二、LED模板代码三、LCD模板代码 一、STM32CubeMx配置 打开STM32CubeMx,选择【File】->【New Project】,进入芯片选择界面,搜索到蓝桥杯官方的芯片型号,并点击收藏,下次直接点击收藏就…

【C++提高】常用容器

常用容器 引言:迭代器的使用一、vector容器1. vector基本概念2. vector的迭代器3. vector构造函数4. vector赋值操作5. vector容量和大小6. vector插入和删除7. vector数据存取8. vector互换容器9. vector预留空间 二、deque容器1. deque容器的基本概念2. deque容器…

leetcode:438. 找到字符串中所有字母异位词

给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。 示例 1: 输入: s "cbaebabacd", p "…

强固型工业电脑在仓储智能化行业、RFID+叉车电脑、扫码枪+叉车电脑应用

仓储智能化行业应用 科技的使命,是为了智能物流行业的客户,提供最佳的工业电脑解决方案。为了提高在仓库或者物流配送中心工作的效率,我们对仓储的不同应用需要,设计了一系列工业电脑来满足客户的需求。其中包括专业的叉车车载电…

NetSuite Connector实践分享

A.I 成为我们在企业信息化应用领域的研究重点。A,即是人工智能;I,即是集成技术。 在早前的一期我们谈了人工智能在模糊信息处理方面的应用。 NetSuite 文心一言(Ernie)的AI应用-CSDN博客 今朝,我们谈一下…

【JavaScript编程实操14】DOM实操_回到顶部

前言 本次主要是针对Javascript阶段的DOM实操方面的练习,本次主要实现当页面内容过多时,可以点击按钮,快速回到页面顶部的效果。这次的实现逻辑比较简单,主要是应用函数实现页面的回到顶部功能,this.scrollTo(0, 0)可以…

vue element ui 打开弹窗出现黑框问题

文章目录 问题描述解决方案 问题描述 大家好!今天是2024年4月20日 | 农历三月十二,周六的我又做在公司里面写起了代码 今天在做项目的时候遇到一个奇怪的问题,如下图所示: 因为这个页面我做了两个弹框,先弹出来第一个弹…