LeetCode讲解篇之746. 使用最小花费爬楼梯

文章目录

题目描述

题解思路

爬到第i层的最小花费 = min(爬到第i - 1层的最小花费 + 从第i - 1层向上爬的花费, 爬到第i - 2层的最小花费 + 从第i - 2层向上爬的花费)

设fi为爬到第i层的最小花费

则fi = min(fi - 1 + costi - 1, fi - 2 + costi - 2)

题解代码

go 复制代码
func minCostClimbingStairs(cost []int) int {
    // i - 2层的最小花费a   i - 1层的最小花费b
    a, b := 0, min(cost[0], cost[1])
    for i := 2; i < len(cost); i++  {
        a, b = b, min(b + cost[i], a + cost[i - 1])
    }

    return b
}

题目链接

https://leetcode.cn/problems/min-cost-climbing-stairs/description/

相关推荐
_Narcissus_8 小时前
分治&递归
数据结构·c++·笔记·算法·leetcode·递归·分治
明志数科8 小时前
具身智能数据工程全链路解析:从真实产线采集到LeRobot适配
网络·人工智能·算法
小O的算法实验室8 小时前
AAAI-26,Lehmer编码搜索排列空间的理论与实证分析
算法
lch2011_yb8 小时前
CSP-S 2023 密码锁 题解
算法
OPEN-F9 小时前
C++进阶教程:运算符重载与类型转换
java·c++·算法
牧杉-惊蛰9 小时前
将数组对象根据自定义排列
java·开发语言·算法
inquisiter10 小时前
损失函数在标量和矩阵上的求导对比
线性代数·算法·矩阵
离凌寒10 小时前
一、关于st上制作外部烧录算法时软件识别不到算法文件的问题总结
算法
青 春 记 忆11 小时前
LeetCode 283. 移动零|Python 解法详解
python·算法·leetcode