LeetCode_Container With Most Water

Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i is at (i, ai) 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) {

        // Start typing your C/C++ solution below

        // DO NOT write int main() function

        int size = height.size();

        if(size < 2) return 0;

        int maxA = 0,temp;

        int left = 0, right = size -1;

        

        while(left < right)

        { 

            if( height[left] <height[right] )

            {

             temp = height[left] * (right - left);

             left ++;

            }else{

            

                temp = height[right] * (right - left ) ;

                right--;

            }

            

            maxA = maxA > temp ? maxA : temp ;

            

        }

        

        return maxA ;

    }

};

 贪心的思想。

最近发现自己越来越搓了,要努力了!

你可能感兴趣的:(LeetCode)