Quick actions

cmd+k|ctrl+k

Navigation

Languages

Container With Most Water (brute force)

Snippet info

Language

Python

Visibility

public

Author

arthurpc02

Created

2026-02-22T12:42:23.482931Z

Updated

2026-02-22T14:34:33.273628Z

# You are given an integer array height of length n. There are n vertical lines
# drawn such that the two endpoints of the ith line are (i, 0) and (i, height[i]).

# Find two lines that together with the x-axis form a container, such that the
# container contains the most water.

# Return the maximum amount of water a container can store.

# Notice that you may not slant the container.

# Example 1:

# Input: height = [1,8,6,2,5,4,8,3,7] Output: 49 Explanation: The above vertical
# lines are represented by array [1,8,6,2,5,4,8,3,7]. In this case, the max area 
# water (blue section) the container can contain is 49.

# Example 2:

# Input: height = [1,1] Output: 1

# Constraints:

# n == height.length
# 2 <= n <= 105
# 0 <= height[i] <= 104

# source: https://thita.ai/problems/container-with-most-water



class Solution:
    def calculateMaxArea(self, height):
        maxArea = 0
        for a in range(len(height)):
            for b in range(len(height)):
                if a == b:
                    break
                print(f"for a={a} and b={b}")
                heig = min(height[a], height[b])
                print(f" height={heig}")
                
                width = abs(a-b)
                print(f" width={width}")
                
                area = heig*width
                if area > maxArea:
                    maxArea = area
        
        return maxArea


def main():
    print("Hello world!")
    solution = Solution()
    
    test1 = [1,8,6,2,5,4,8,3,7]
    val = solution.calculateMaxArea(test1)
    assert(val==49)
    
    test2 = [1,1]
    val = solution.calculateMaxArea(test2)
    assert(val==1)
    
    
    print("Goob-bye cruel world!")



if __name__ == "__main__":
    main()
INFO