leetcode-python-打家劫舍
从第三项开始,判断是第i项加上之前的i-2的和大还是i-1的和大
class Solution: def rob(self, nums: List[int]) -> int: if not nums: return 0 if len(nums) == 1: return nums[0] profit = [0] * len(nums) profit[0] = nums[0] profit[1] = max(nums[0],nums[1]) for i in range(2,len(nums)): profit[i] = max(nums[i] + profit[i-2],profit[i-1]) return profit[-1]

浙公网安备 33010602011771号