# Solving Leetcode Interviews in Seconds with AI: Container With Most Water


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "11" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> 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 of 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  

	# Explanation
	Here's the solution:

*   **Two-Pointer Approach:** Use two pointers, one at the beginning and one at the end of the array.
*   **Maximize Area:** Calculate the area formed by the lines at the pointers and the x-axis. Update the maximum area found so far.
*   **Move Pointers:** Move the pointer pointing to the shorter line towards the center, as this might create a larger container.

*   **Runtime Complexity:** O(n), **Storage Complexity:** O(1)

	
	# Code
	```python
	def maxArea(height):
    """
    Finds the maximum amount of water a container can store.

    Args:
        height: A list of integers representing the height of vertical lines.

    Returns:
        The maximum amount of water a container can store.
    """
    max_area = 0
    left = 0
    right = len(height) - 1

    while left < right:
        # Calculate the area of the current container
        width = right - left
        current_area = min(height[left], height[right]) * width
        max_area = max(max_area, current_area)

        # Move the pointer with the smaller height
        if height[left] < height[right]:
            left += 1
        else:
            right -= 1

    return max_area
	```
			
