class Solution: # Класс-обёртка для LeetCode
def maxArea(self, height: list[int]) -> int: # Метод: на вход список высот, на выход площадь
result = 0 # Текущий максимум площади, стартуем с 0
left = 0 # Левый указатель — на первую линию
right = len(height) - 1 # Правый указатель — на последнюю линию
while left < right: # Пока указатели не встретились
area = (right - left) * min(height[left], height[right])
# Площадь = ширина × меньшая высота
result = max(result, area) # Обновляем максимум, если площадь больше
if height[left] < height[right]: # Если левая линия ниже правой...
left += 1 # ...двигаем левый указатель вправо
else: # Иначе (правая ниже или равна)...
right -= 1 # ...двигаем правый указатель влево
return result # Возвращаем наибольшую найденную площадь