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

文章目录

题目描述

题解思路

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

设f[i]为爬到第i层的最小花费

则f[i] = min(f[i - 1] + cost[i - 1], f[i - 2] + cost[i - 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/

相关推荐
aqiu1111117 小时前
【并查集专题top】
c++·算法
叼烟扛炮7 小时前
C++ 知识点17 友元
开发语言·c++·算法·友员
richard_yuu7 小时前
数据结构|二叉树高阶进阶-经典算法
数据结构·c++·算法
不知名的忻7 小时前
Dijkstra算法(朴素版&堆优化版)
java·数据结构·算法··dijkstra算法
星星码️8 小时前
LeetCode刷题简单篇之反转字母
c++·算法·leetcode
naturerun8 小时前
螺旋形遍历奇数阶矩阵
c++·算法·矩阵
hqyjzsb8 小时前
跨行业求职最快的加分方式:带一个AI时代人人都缺的能力去面试
人工智能·面试·职场和发展·aigc·人机交互·产品经理·学习方法
wuweijianlove8 小时前
算法复杂度的实验估算与误差分布建模的技术7
算法
佳xuan9 小时前
简而言之c++
c++·算法
O&REO9 小时前
哈工大网安 / 信安 837 考研复试机试&面试重点 + 资料汇总
考研·面试·职场和发展