본문 바로가기
Problem Solving/리트코드

[리트코드 leetcode] 198. House Robber

by ggyongi 2021. 4. 12.
반응형

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

책의 도움을 약간 받아 완성하였다..

class Solution:
    def rob(self, nums: List[int]) -> int:
   
        if len(nums)<=2:
            return max(nums)
        
        dp = {}
        
        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]

한달 후 혼자 다시 푼 코드

class Solution:
    def rob(self, nums: List[int]) -> int:
        if len(nums)<3:
            return max(nums)
        x = nums[0]
        y = max(nums[0],nums[1])
        
        for i in range(2, len(nums)):
            x, y = y, max(x+nums[i],y)
            
        return y
 

비전공자 네카라 신입 취업 노하우

시행착오 끝에 얻어낸 취업 노하우가 모두 담긴 전자책!

kmong.com

댓글