class Solution {
public:
int minCostClimbingStairs(vector<int>& cost) {
int L = cost.size();
if(L==0) return 0;
if(L==1) return cost[0];
for(int i=2;i<L;i++) cost[i] += min(cost[i-1],cost[i-2]);
return min(cost[L-1],cost[L-2]);
}
};
No.40 LeetCode746
最新推荐文章于 2025-05-13 09:17:42 发布
本文介绍了一种解决爬楼梯问题的算法,通过动态规划的方法计算到达每一级楼梯所需的最小成本。算法首先检查楼梯的成本数组大小,若为空则返回0;若只有1级,则返回该级成本。然后从第2级开始,将当前级成本加上前两级中成本较小的一级,最后返回最后一级和倒数第二级中成本较小的一级。
216

被折叠的 条评论
为什么被折叠?



