class Solution {
public:
int minCostClimbingStairs(vector<int>& cost) {
//dp状态
//dp[i] 表示到i 的最低花费
//dp状态迁移方程
//dp[i] = min(dp[i - 1] + cost[i - 1],dp[i - 2] + cost[i - 2])
//初始化
//dp[0] , dp[1] = 0, 0
//有个失误,他的顶端是相当于最后下标的还要靠后一个位置
vector<int> dp(cost.size() + 1,0);
for (int i = 2; i <= cost.size(); ++i) {
dp[i] = min(dp[i - 1] + cost[i - 1],dp[i -2] + cost[i - 2]);
}
return dp[cost.size()];
}
};
Leetcode 746. 使用最小花费爬楼梯
最新推荐文章于 2024-06-01 18:28:10 发布