Skip to content

Instantly share code, notes, and snippets.

@Ray1988
Created June 12, 2014 06:16
Show Gist options
  • Save Ray1988/a590c48e3a53fd0b3aa0 to your computer and use it in GitHub Desktop.
Save Ray1988/a590c48e3a53fd0b3aa0 to your computer and use it in GitHub Desktop.
python
"""
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:
# @return an integer
def maxArea(self, height):
if height==None or len(height)<2:
return 0
left=0
right=len(height)-1
maxArea=0
while left<right:
area=min(height[left], height[right])*(right-left)
if maxArea<area:
maxArea=area
if height[left]<height[right]:
left+=1
else:
right-=1
return maxArea
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment