취미가 좋다

198. House Robber 본문

알고리즘 문제풀이/Leetcode

198. House Robber

benlee73 2021. 8. 16. 09:43

https://leetcode.com/problems/house-robber/

 

House Robber - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

Solution

class Solution:
    def rob(self, nums):
        if len(nums) < 2:
            return nums[0]
        dp = []
        dp.append(nums[0])
        dp.append(max(nums[0], nums[1]))
        
        for i in range(2, len(nums)):
            dp.append(max(dp[i-2]+nums[i], dp[i-1]))
        
        return dp[-1]
  • 기본적인 dp 문제이다.
  • 인접한 2개의 집을 선택하지 말아야 하므로 dp[i] = max(d[i-2]+nums[i], dp[i-1]) 를 사용할 수 있다.

'알고리즘 문제풀이 > Leetcode' 카테고리의 다른 글

200. Number of Islands  (0) 2021.08.20
199. Binary Tree Right Side View  (0) 2021.08.17
189. Rotate Array  (0) 2021.08.13
169. Majority Element  (0) 2021.08.12
155. Min Stack  (0) 2021.08.06
Comments