# Container With Most Water

Sep 27, 2017

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 and n is at least 2.

int maxArea(vector<int> &height) {
int water = 0;
for(int i = 0;i < height.size(); ++i)
for (int j = 0;j < height.size(); ++j) {
int h = min(height[i],height[j]);
water = max(water,h*(j - i));
}
return water;
}


int maxArea(vector<int> &height) {
int water = 0;
int i = 0,j = height.size() - 1;
while(i < j) {
int h = min(height[i],height[j]);
water = max(water,h*(j - i));
while(height[i] <= h && i < j) i++;
while(height[j] <= h && i < j) j++;
}
}


LeetCodeLeetCode

Merge Two Sorted List

Pow(x,n)

comments powered by Disqus