Skip to content

11.Container With Most Water  #26

@niuworld

Description

@niuworld

Question:

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.

Solution:

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions