본문 바로가기
알고리즘 문제/Leetcode

[Leetcode]11. Container With Most Water

by 햄과함께 2021. 11. 3.
320x100

문제 : https://leetcode.com/problems/container-with-most-water/


수직선 높이를 나타내는 배열이 주어진다. 두 개의 수직선을 선택해서 그 사이에 물을 넣는다고 할 때 가능한 최대 용량은 얼마인가.


투포인터로 푼다.

왼쪽부터 시작하는 left 포인터, 오른쪽부터 시작하는 right 포인터가 있다.

left, right 수직선을 선택했을 때의 용량을 구하고 이들 중 최대 값이 정답이 된다.

용량을 구한뒤 left가 right보다 낮다면 left를 +1 하고, right가 left보다 낮다면 right를 -1 해준다.

 

시간복잡도는 O(N). N = 배열의 크기


소스코드 : https://github.com/fpdjsns/Algorithm/blob/master/leetcode/medium/11.%20Container%20With%20Most%20Water.cpp

320x100

댓글