【LeetCode75】第六十题 使用最小花费爬楼梯

news2025/2/25 14:10:49

目录

题目:

示例:

分析:

代码:


题目:

示例:

分析:

题目给我们一个数组,第i个数表示在第i个台阶起步所需的花费。我们可以从下标为0或是1的台阶出发,问我们最终到达顶部所需花费的最小代价。

首先有两个点要提前说明,第一是我一开始站到0或是1的台阶是不需要花费的。我从0或1出发,才需要花费对应的代价。

第二就是cost花费数组的长度为n,则我们需要达到的顶层是n+1。

我们每次可以跨1~2节台阶,所以如果我们要走到第k节台阶,则有两种选择,一种是从k-1节台阶跨一节台阶,或者是从k-2节台阶跨两节台阶上来。

花费分别是 到达k-1节台阶的花费+cost[ k-1 ] , 到达k-2节台阶的花费+cost [ k - 2 ]

至此,我们发现了规律,也就是递推公式,所以我们直接使用dp数组来进行动态规划,dp[ i ]的含义就是到达第i节台阶所需的花费。由于我们一开始说了,我们最终需要到达的台阶是n+1层,所以dp数组的长度就应该是n+1而不是n。

关于dp数组的初始化,我们一开始也说了,只有从台阶起步,我们才会需要花费,因为我们在0或1节台阶上的花费都是0,直接初始化这俩为0就可以开始递推了。

最终返回dp数组的最后一个元素即可。

代码:

class Solution {
public:
    int minCostClimbingStairs(vector<int>& cost) {
        vector<int>dp(cost.size()+1,0);
        for(int i=2;i<cost.size()+1;i++){
            dp[i]=min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2]);
        }
        return *(dp.end()-1);
    }
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1027607.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【校招VIP】测试脚本语言之权限命令

考点介绍&#xff1a; 在计算机科学中&#xff0c;Shell俗称壳&#xff08;用来区别于核&#xff09;&#xff0c;是指“为使用者提供操作界面”的软件&#xff08;command interpreter&#xff0c;命令解析器&#xff09;。它类似于DOS下的http://COMMAND.COM和后来的cmd.exe…

nginx配置gzip压缩,优化传输效率,加快页面访问速度

文章目录 引言一、什么是nginx的gzip二、nginx的常用配置项三、使用示例四、浏览器查看gzip是否生效1. 判断浏览器是否支持gzip2. 判断gzip是否生效 总结 引言 在现代互联网的高速发展进程中&#xff0c;网站的访问速度愈发成为了用户选择和留存的关键。其中&#xff0c;通过g…

【方案】浅析AI视频分析与视频监控技术的工厂车间智能化监管方案

一、方案背景 工厂生产车间一般是从原材料到成品的流水作业&#xff0c;有大量器械和物料。为保障车间财产安全并提高生产效率&#xff0c;需要进行全面的监管。在生产制造流水线的关键工序中&#xff0c;不仅有作业过程监管需求&#xff0c;同时&#xff0c;也存在生产发生异…

SpringBoot-JWT生成

一、理论 1.配置pom.xml <!-- JWT令牌--><dependency><groupId>io.jsonwebtoken</groupId><artifactId>jjwt</artifactId><version>0.9.1</version></dependency> 2.加密方式 说明:官网JSON Web Tokens - jwt…

vim的使用介绍以及命令大全(系统性学习day3)

懒羊羊感谢大家的关注和三连支持~ 目录 前言 一、vim的使用介绍 二、命令大全 1.命令模式 &#xff08;1&#xff09;复制&#xff08;配合粘贴命令p使用&#xff09; &#xff08;2&#xff09;剪切 &#xff08;3&#xff09;粘贴 &#xff08;4&#xff09;删除 …

IDM激活

激活脚本原地址 github搜索&#xff1a;IDM-Activation-Script 或者直接点我进入 如何激活&#xff1f; 下载IDM 官网链接&#xff1a;Internet Download Manager: The fastest download accelerator 然后安装 安装成功后进入powershell win x 执行命令 iwr -useb https:/…

企业蓄电池怎么实时监测?这个方法最简单使用!

在这个数字时代&#xff0c;企业对电力的依赖性愈发显著&#xff0c;这使得电池系统成为维持业务连续性的不可或缺的一环。 蓄电池监控不仅有助于实时跟踪电池系统的性能和状态&#xff0c;还有助于预测问题&#xff0c;提前采取措施以防止电力中断。它还可以帮助企业降低能源成…

2023年9月21日,历史上的今天大事件早读

​公元前19年9月21日古罗马诗人维吉尔逝世 1069年9月21日宋神宗采用王安石新法&#xff0c;开始实行青苗法 1643年9月21日皇太极逝世 1898年9月21日慈禧太后发动戊戌政变 1909年9月21日我国飞机设计师冯如第一次试飞成功 1920年9月21日民主革命家朱执信遇难 1926年9月21日…

c++ 函数的参数是否可以为auto

&#xff08;1&#xff09;在vs2019开到 cpp20 的语法规范&#xff0c;是可以的 &#xff08;2&#xff09;但网上和文心一言和书上说不可以 (2) 再附上一种auto 的很炫酷的写法&#xff1a;

面试Java后端

sql 五表联合查询 面试八股 JDK&#xff0c;JRE,JVM之间的区别 JDK&#xff0c;Java标准开发包&#xff0c;它提供了编译、运行Java程序所需的各种工具和资源&#xff0c;包括Java编译器、Java运行时环境&#xff0c;以及常用的Java类库等。 JRE(Java Runtime Environment)&…

label_studio中uwsgi内存占用高的问题排查

问题描述 使用docker起的label_studio服务&#xff0c;起来就占了8GB内存&#xff0c;无论是否有标注任务。 而且这个么大内存label_studio起来就有&#xff0c;不是随着时间起来的。本来发现问题的是label_stuido17.3, 我下载了18.02版本的docker&#xff0c;问题也是一样的,…

视频监控系统/安防监控/视频AI智能分析网关:持刀检测算法场景汇总

TSINGSEE青犀AI智能分析网关——持刀检测算法&#xff0c;是一种利用计算机AI分析算法技术来检测和辨别视频中是否存在刀具的算法&#xff0c;用来保障群众安全&#xff0c;维护公共治安&#xff0c;还可以与“人员跌倒”、“人员聚集”、“人员跌倒”等算法结合&#xff0c;制…

inpaint-anything:分割任何东西遇到图像修复

用户可以通过单击图像中的任何对象来选择它。借助强大的视觉模型&#xff0c;例如SAM&#xff0c;LaMa和稳定扩散&#xff08;SD&#xff09;&#xff0c;Inpaint Anything能够顺利地删除对象&#xff08;即删除任何内容&#xff09;。 此外&#xff0c;在用户输入文本的提示下…

JUnit测试进阶(Mock测试)

Mock测试 一、Mock测试1.Mock测试产生背景2.什么是Mock测试3.具体案例 一、Mock测试 1.Mock测试产生背景 一个应用程序通常由多个类文件组成&#xff0c;各个类之间彼此存在着继承&#xff0c;实现&#xff0c;关联&#xff0c;依赖等关系&#xff0c;共同为用户服务。应用中单…

vue部分/所有内容全屏切换展示

需求&#xff1a;就是把一个页面的某一部分内容点击全屏操作按钮后全屏展示&#xff0c;并非所有内容全屏&#xff0c;所有内容的话那肯定就所有全屏展示啊&#xff0c;可以做切换 1.部分全屏代码 element.requestFullscreen();这个就是全屏的代码了&#xff0c;注意前面的ele…

学习如何编码

在学习编码时感受到一些失败 ● 他在编码旅途之初并没有一个明确的目标&#xff1b; ● 他从看课程和阅读教程开始&#xff0c;但他只会复制代码&#xff0c;而不关心它是如何工作的。有时候他会复制粘贴代码 ● 他没有通过做小挑战或记笔记来强化他正在学习的东西 ● 他没有练…

springboot整合全局异常处理

一、项目结构 二、全局异常 &#xff08;1&#xff09;启动类 package com.mgx;import com.mgx.common.dto.Result; import com.mgx.utils.ErrorUtil; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.spr…

GLIP:将语言图像预训练引入目标检测

本文将深入研究一篇论文,该论文以CLIP在语言图像预训练方面的巨大成功为基础,并将其扩展到目标检测任务:GLIP — G圆形语言图像预训练。我们将涵盖论文的关键概念和发现,并通过提供进一步的上下文以及为图像和实验结果添加注释来使它们易于理解。我们走吧!

sublime text3 设置代码错误提示之php

第一步&#xff1a; ctrlshiftp 输入 install package 并选中 第二步&#xff1a; 输入 sublimelinter-php 第三步&#xff1a; Prefernces> package Settings >Sublimelinter > settings 这里不同按照版本可能不一样 有些可能是 settings User 第四步 完成