可以参考动态规划的打家劫舍问题。代码超过78%的用户

代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可

计算

@param n int整型 数组的长度

@param array int整型一维数组 长度为n的数组

@return long长整型

class Solution: def subsequence(self , n: int, array: List[int]) -> int: # write code here if len(array) == 0: return n = len(array) dp = [0]*(n+1) dp[0] = 0 dp[1] = max(array[0],dp[0]) for k in range(2, n+1): dp[k] = max(dp[k-1], array[k-1]+dp[k-2]) return dp[n]