king_crimson10

house robber

Jul 28th, 2022 (edited)
1,133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.47 KB | None | 0 0
  1. def rob(self, nums: List[int]) -> int:
  2.  
  3.         if len(nums)<3:
  4.             return max(nums)
  5.        
  6.         res_arr = nums.copy()
  7.        
  8.         for i in range(len(nums)-2):
  9.             r1 = nums[i+2] + res_arr[i]
  10.             res_arr[i+2] = max(r1, res_arr[i+2])
  11.             if i+3 in range(len(nums)):
  12.                 r2 = nums[i+3] + res_arr[i]
  13.                 res_arr[i+3] = max(r2, res_arr[i+3])    
  14.            
  15.         return max(res_arr[-1], res_arr[-2])
Advertisement
Add Comment
Please, Sign In to add comment