취미가 좋다
198. House Robber 본문
https://leetcode.com/problems/house-robber/
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