leetcode水题 计算容器最大装水量

leetcode水题 计算容器最大装水量
思路很简单,就是首先找到最右边和最左边构成一个容器,计算它的容积,然后如果最左边的边比最右边的边短,高度取决于最左边的边,那么最右边的边改变的话只会将宽越变越小,所以只有可能变左边的边,使得高度变高,宽度变窄。反之一样。

class Solution {
public:
    int maxArea(vector<int>& height) {
        int l=0,r=height.size()-1;
        int maxn=0;
        while(l<r)
        {
            maxn=max(maxn,(r-l)*min(height[l],height[r]));
            if(height[l]<height[r])
                l++;
            else
                r--;
        }
        return maxn;
    }
};