상위 150개 인터뷰쉬움

물이 가장 많은 용기

'물이 가장 많은 용기' 문제에 대한 자세한 가이드 및 Python 구현입니다.

문제 설명

쉬움

길이가 n인 정수 배열 height이 제공됩니다. i번째 줄의 두 끝점이 (i, 0)(i, height[i])이도록 n 수직선이 그려져 있습니다.

x축과 함께 용기를 형성하는 두 개의 선을 찾아 용기에 가장 많은 물이 포함되도록 하세요.

컨테이너가 저장할 수 있는 최대 물의 양을 반환합니다.

용기를 기울일 수는 없습니다.

maxArea(height: List[int]) -> int 함수를 작성하세요.

제약
  • n == len(height)
  • 2 <= n <= 10^5
  • 0 <= height[i] <= 10^4

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

The max area is between lines at index 1 (height 8) and index 8 (height 7). Area = min(8, 7) * (8 - 1) = 7 * 7 = 49.

Example 2
Input
height = [1, 1]
Output
1
Explanation

Area = min(1, 1) * (1 - 0) = 1.

Need a Hint?
세트나 힙과 같은 두 포인터 관련 데이터 구조를 사용하는 것을 고려해보세요.
Edge Cases to Watch
  • 빈 입력 구조
  • 단일 요소 입력
  • 큰 수치 범위

해결할 준비가 되셨나요?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

편집기에서 열기
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.