题目解析
盛最多水的容器
算法原理
向内枚举:
weight一定会减小
height不是不变就是减小
要求的是盛水最多的容器,那么这些枚举情况就不需要。
拿比较小的数去向内枚举,v一直在减小,所以说直接排除
编写代码
class Solution {
public:
int maxArea(vector<int>& height) {
int left = 0;
int right = height.size()-1;
int sum = 0;
while(left<right){
int v = min(height[left],height[right])*(right-left);
sum = max(v,sum);
if(height[left]<height[right])
left++;
else
right--;
}
return sum;
}
};