package DoublePointers
// 时间复杂度: O(n), 空间复杂度: O(1)
func maxArea(height []int) int {
left, right := 0, len(height)-1
result := (right - left) * min(height[left], height[right])
for left < right {
if height[left] <= height[right] {
tmp := height[left]
for left < right && height[left] <= tmp {
left++
}
} else {
tmp := height[right]
for left < right && height[right] <= tmp {
right--
}
}
result = max(result, (right-left)*min(height[left], height[right]))
}
return result
}