当前位置: 首页> 财经> 产业 > LeetCode LCR088.使用最小花费爬楼梯

LeetCode LCR088.使用最小花费爬楼梯

时间:2025/8/23 15:30:33来源:https://blog.csdn.net/m0_63816268/article/details/141868733 浏览次数:0次

LeetCode LCR088.使用最小花费爬楼梯

image-20240902212359074

思路🧐:

  动态规划经典题目,假设 dp[i] (最小花费的记录数组)表示到达第 i 阶楼梯所需的最小花费。对于第i阶楼梯,可以从第i-1阶楼梯爬一级上来,也可以从第i-2阶楼梯爬两级上来。因此,到达第i阶楼梯的最小花费就是这两种情况中的较小值,所以我们可以用这种思想,不断递推,直到爬到楼顶,此时dp[i]就是最小花费,并且得出公式:
d p [ i ] = m i n ( d p [ i − 1 ] + c o s t [ i − 1 ] , d p [ i − 2 ] + c o s t [ i − 2 ] ) dp[i] = min(dp[i-1] + cost[i-1], dp[i-2] + cost[i-2]) dp[i]=min(dp[i1]+cost[i1],dp[i2]+cost[i2])
image-20240902214118103

代码🔎:

class Solution {
public:int minCostClimbingStairs(vector<int>& cost) {int n = cost.size();vector<int> dp(n + 1);//由题所得,我们可以选0或1作为初始阶梯//所以dp[0]或dp[1]最小花费为0dp[0] = dp[1] = 0;for(int i = 2; i <= n; i++){dp[i] = min(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i- 2]);}return dp[n];}
};

image-20240902212948938

关键字:LeetCode LCR088.使用最小花费爬楼梯

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: