题解 | #不相邻取数# 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])


全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务