Container With Most Water

来源:互联网 发布:python 答题系统 编辑:程序博客网 时间:2024/06/05 08:55

Container With Most Water

 

Given n non-negative integers a1a2, ..., an, where each represents a point at coordinate (iai). n vertical lines

 are drawn such that the two endpoints of line i is at (iai) and (i, 0). Find two lines, which together with x-axis 

forms a container, such that the container contains the most water.

Note: You may not slant the container.

思路:从两边向里缩

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


0 0