题目
给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。
返回容器可以储存的最大水量。
思路
双指针,两边逼近找出最大面积
代码
class Solution {
public:
int maxArea(vector<int>& height)
{
int max_water = 0;
int i =0;
int j = height.size()-1;
while(i<j)
{
if(height[i] > height[j])
{
max_water = max(max_water, (j-i)* height[j--]);
}
else
{
max_water = max(max_water, (j-i)* height[i++]);
}
}
return max_water;
}
};