본문 바로가기
Algorithm/LeetCode

[LeetCode] 11 | Container With Most Water

by 밤초록 2022. 4. 1.
11 | Container With Most Water
https://leetcode.com/problems/container-with-most-water/

 

 

 

 

작성 코드

 

 

class Solution:
    def maxArea(self, height: List[int]) -> int:
        water = 0
        for j in range(len(height)):
            for k in range(j, len(height)):
                water = max(water, (k - j) * min(height[j], height[k]))
        return water

 

  • 시간 초과 발생

 

이상 코드

 

class Solution:
    def maxArea(self, height: List[int]) -> int:
        start, end = 0, len(height) - 1
        answers = []
        while start >= 0 and end < len(height) and start < end:
            answers.append((end - start) * min(height[end], height[start]))
            if height[start] > height[end]:
                end -= 1
            else:
                start += 1
        return max(answers)
반응형

댓글