Leetcode刷题接雨水

Posted 外部存储设备

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode刷题接雨水相关的知识,希望对你有一定的参考价值。

题目:https://leetcode-cn.com/problems/trapping-rain-water/

class Solution:
    def trap(self, height: List[int]) -> int:
        # 每一个位置能接的水 = min(左边最高,右边最高)- 当前位置高度
        N = len(height)
        if N == 0:
            return 0
        left_max = 0
        right_max = max(height)
        result = 0
        for i in range(N):
            h = height[i]
            if h == right_max:
                right_max = max(height[i+1:]) if i+1 < N else 0
            floor = min(left_max, right_max)
            if h < floor:
                result += floor - h
            if h > left_max:
                left_max = h
        return result

以上是关于Leetcode刷题接雨水的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode刷题模版:41 - 50

LeetCode刷题模版:41 - 50

LeetCode-6:接雨水

leetcode 每日一题 42. 接雨水

leetcode 每日一题 42. 接雨水

Leetcode刷题Python LeetCode 2038. 如果相邻两个颜色均相同则删除当前颜色