题解 | #不相邻取数# Python3
不相邻取数
https://www.nowcoder.com/practice/a2be806a0e5747a088670f5dc62cfa1e
import sys # dp[n] 为 0~n 的最大不相邻和 # dp[n] = max(dp[n-2]+a_n, dp[n-1]) n = int(input()) nums = list(map(int,input().strip().split())) dp = [0] * (n+2) # 因为要提前看到前两位的数 for i in range(2,n+2): dp[i] = max(dp[i-2]+nums[i-2], dp[i-1]) print(dp[-1])