198. House Robber
mediumArray · Dynamic Programming
read the problem on leetcode →
first solved 18 Jun 2023
class Solution(object):
def rob(self, nums):
"""
:type nums: List[int]
:rtype: int
"""
dp=[0]* (len(nums))
if len(nums)==1:
return nums[0]
dp[0]=nums[0]
dp[1]=max(nums[0], nums[1])
for i in range(2, len(nums)):
dp[i]=max(dp[i-1], dp[i-2]+nums[i])
return dp[len(nums)-1]