没看答案,用双指针遍历height数组的左右两端,对于相对短的一边就移动(木桶效应),并不断更新答案。
class Solution:
def maxArea(self, height: List[int]) -> int:
n = len(height)
left, right = 0, n-1
res = 0
while left < right:
if height[left] <= height[right]:
res = max(res, (right - left) * height[left])
left += 1
else:
res = max(res, (right - left) * height[right])
right -= 1
return res



