题解 | #最小花费爬楼梯#

最小花费爬楼梯

https://www.nowcoder.com/practice/9b969a3ec20149e3b870b256ad40844e

n = int(input())
cost = list(map(int, input().split()))
dp = [0 for _ in range(n+1)]
for i in range(2, n+1):
    dp[i] = min(dp[i-1] + cost[i-1], dp[i-2] + cost[i-2])
print(dp[-1])
这道题虽说是爬楼梯,所以还是按照爬楼梯的思路来

对于爬楼梯而言,当前第i阶可以由i-1阶一步跨一阶上来或者由i-2阶一步跨两阶上来
因此比较用一个dp数组保存花销,看看从上一阶上来花销小,还是从上两阶上来花销小
全部评论

相关推荐

不愿透露姓名的神秘牛友
06-25 19:15
点赞 评论 收藏
分享
牛客383479252号:9,2学生暑期实习失利开始投小厂,给这群人整自信了
点赞 评论 收藏
分享
认真搞学习:28小登的建议,投算法岗不要写什么物理竞赛,互联网+,多写点项目,用什么算法做了什么。还有本科算法是不可能的开发你这个也没有项目啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务