Container With Most Water

Medium

Description

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.

Examples

Input:height = [1,8,6,2,5,4,8,3,7]
Output:49
Explanation:

The max area of water is between lines at index 1 and 8.

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

The area is min(1,1) * 1 = 1.

Input:height = [3,9,2,4,1,8,5]
Output:32
Explanation:

The max area is between lines at index 1 (height=9) and index 5 (height=8). The area is min(9,8) * (5-1) = 8 * 4 = 32. Even though there are taller lines, the distance between them matters - closer tall lines may give less area than farther medium-height lines.

Constraints

  • n == height.length
  • 2 ≤ n ≤ 10⁵
  • 0 ≤ height[i] ≤ 10⁴

Ready to solve this problem?

Practice solo or challenge other developers in a real-time coding battle!