【Leetcode刷题Python】11. 盛最多水的容器

1 题目

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。
找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
返回容器可以储存的最大水量。

请添加图片描述

2 解析

请添加图片描述

3 python实现

def maxArea(self, height: List[int]) -> int:
    i,j,res = 0,len(height)-1,0
    while i<j:
        if height[i]<height[j]:
            res = max(res,height[i]*(j-i))
            i +=1
        else:
            res = max(res,height[j]*(j-i))
            j -=1
    return res

猜你喜欢

转载自blog.csdn.net/weixin_43935696/article/details/125451448