DP专题3 使用最小花费爬楼梯

news2024/11/26 7:31:57

题目:

思路:

        根据题意,我们先明确 dp 数组 i 的含义,  这里很明显,可以知道 i 是对应阶梯的最少花费,

其次dp初始化中,我们的 dp[0] 和 dp[1]  是 0 花费,

这是我们可以选择的,到了 dp[2] 就是我们min(dp[0] + cost[0],dp[1] + cost[1])   

即   这就是 我们的递推公式:达到当前阶梯的最少花费 + 当前阶梯需要的花费 = 到达的目标阶梯

即 dp[i] = min(dp[i - 1] + cost[i - 1],dp[i - 2] + cost[i - 2]);

代码详解如下:

int minCostClimbingStairs(vector<int>& cost) 
{
	// 计算台阶数量
	int n =cost.size();
    
    // 定义 dp 数组,其中 dp[i]  
	// i 所对应的是相应台阶的最少花费
    vector<int>dp(n + 1,0);
    
    // dp 数组初始化,由于可以选择在 0 或 1 台阶开始爬楼梯
    // 所以 先计算第三个台阶的最少花费
    dp[2] = min(cost[0],cost[1]);
    
    for(int i = 3;i <= n;++i)
    {
    	// 递推公式,达到当前阶梯的最少花费 + 当前阶梯需要的花费 = 到达的目标阶梯
    	dp[i] = min(dp[i - 1] + cost[i - 1],dp[i - 2] + cost[i - 2]);
	}
	
	/*
	
	打印 dp 数组查看是否是自己需要的效果
	验证答案
	debugv(dp);
	
	*/
    
    // 输出对应阶梯的最少花费
	return dp[n];
}

最后提交:

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

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

相关文章

关键词生成原创文章软件-原创文章生成软件

大家好&#xff0c;今天我想和大家分享一下我对147SEO关键词生成原创文章工具的感受。作为一个经常需要写作的人&#xff0c;我深知寻找创意和构建文章结构的挑战。关键词生成原创文章似乎为这些问题提供了一种解决方案。 首先&#xff0c;让我谈谈我的感受。关键词生成原创文章…

9个值得收藏的WebGL性能优化技巧

在这里&#xff0c;我们推荐一些经证明非常适合创建基于 Web 的交互体验的优化技术。 本章主要基于 Soft8Soft 在 Verge3Day Europe 2019 会议上的演讲。 推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景 1、几何/网格 几何是 3D 应用程序的基础&#xff0c;因为它构成了…

华为云云耀云服务器实例使用教学

目录 国内免费云服务器&#xff08;体验&#xff09; 认识国内免费云服务器 如何开通国内免费云服务器 云耀云服务器 HECS Xshell 远程连接 云服务器更改安全组 切换操作系统 服务器详情 HECS适用于哪些场景&#xff1f; 网站搭建 电商建设 开发测试环境 云端学习环…

二维码智慧门牌管理系统开发解决方案:标准化建设的基础

文章目录 前言一、系统质量保证二、系统互联互通三、系统可扩展性 前言 在现代城市管理和服务中&#xff0c;二维码智慧门牌管理系统扮演着至关重要的角色&#xff0c;它通过智能化和数字化手段提高了城市管理效率、公共服务水平&#xff0c;并有助于维护社会公共安全。然而&a…

macOS 12 Monterey:一次全新的跨设备协作体验

macOS 12 Monterey是苹果公司的一次重大突破&#xff0c;它打破了设备间的壁垒&#xff0c;将不同设备无缝地连接在一起&#xff0c;极大地提升了用户的工作效率和娱乐体验。Monterey带来了通用控制、AirPlay、捷径等新功能&#xff0c;以及一些实用的新小功能。 安装&#xf…

跨链协议支持Sui的资产所有权理念,助力资产在不同链之间流通

区块链通常支持安全地持有数字资产这一概念。然而&#xff0c;在一个链上拥有资产并不意味着它可以转移到另一个链上。支持在不同链之间移动资产的跨链协议有助于解决行业中可能出现的主要碎片化问题。 Sui通过基于开源Wormhole协议构建的Wormhole Connect支持跨链。构建者可以…

【数据分享】1901-2022年1km分辨率逐年降水栅格数据(免费获取/全国/分省)

降水数据是我们在各项研究中最常用的气象指标之一&#xff01;之前我们给大家分享过1901-2022年1km分辨率逐月降水栅格数据&#xff08;可查看之前的文章获悉详情&#xff09;&#xff01;该数据来源于国家青藏高原科学数据中心&#xff0c;这儿的逐月降水量是指当月的总降水量…

SeaArt.ai: 海艺AI绘画艺术图片模型创作平台

【产品介绍】 • 名称 SeaArt.ai • 具体描述 SeaArt.ai是一个基于人工智能技术的AI绘画工具&#xff0c;它可以根据你的描述或者关键词来生成符合你想象的图片。你可以选择不同的模式来创建不同类型的图片&#xff0c;比如人物、风景、建筑、神话、自…

自动化测试面试题解析,半小时通透

面试一般分为技术面和hr面&#xff0c;形式的话很少有群面&#xff0c;少部分企业可能会有一个交叉面&#xff0c;不过总的来说&#xff0c;技术面基本就是考察你的专业技术水平的&#xff0c;hr面的话主要是看这个人的综合素质以及家庭情况符不符合公司要求&#xff0c;一般来…

液体颗粒计数器如何选择!

随着液体污染检测技术的飞速发展&#xff0c;液体粒子计数器由于计数速度快、准确度高、重复性好、操作简便且结果不受人为因素的影响&#xff0c;成为半导体等领域用于测量和监测液体样品中颗粒物浓度和径向分布的重要工具。 液体粒子计数器是各行各业用于测量和监测液体样品中…

Jmeter+jenkins接口性能测试平台实践整理

最近两周在研究jmeter&#xff0b;Jenkin的性能测试平台测试dubbo接口&#xff0c;分别尝试使用maven&#xff0c;ant和Shell进行构建&#xff0c;jmeter相关设置略。 一、Jmeterjenkins&#xff0b;Shell&#xff0b;tomcat 安装Jenkins,JDK,tomcat,并设置环境变量&#xff…

企业网盘 VS 大文件传输, 哪个才是企业传输的正确选择?

在当今的信息时代&#xff0c;文件传输是企业日常工作中不可或缺的一项功能。无论是内部沟通、外部协作、还是客户服务&#xff0c;都需要高效、安全、便捷地传输各种类型和大小的文件。那么&#xff0c;面对市场上众多的文件传输产品和服务&#xff0c;企业应该如何选择呢&…

指针,动态内存分配

目录 什么是指针 指针重要性 指针的定义 ​指针的分类&#xff0c;指针和 基本类型指针 星号的含义 形参实参 ​指针和数组 指针和一维数组 指针变量的运算 一个指针变量到底站占几个字节 指针和二维数组 动态内存分配 传统数组的缺点 为什么需要动态内存分配 …

Taro小程序隐私协议开发指南填坑

一. 配置文件app.config.js export default {...__usePrivacyCheck__: true,... }二. 开发者工具基础库修改 原因&#xff1a;从基础库 2.32.3 开始支持 修改路径&#xff1a;详情->本地设置->调试基础库 三. 用户隐私保护指引更新 修改路径&#xff1a;mp后台->设…

Oracle数据如何迁移导入到MySQL

使用Navicat工具建立数据连接&#xff0c;进行数据传输 1、打开Navicat工具&#xff0c;分别连接Oracle数据库和MySQL数据库。 2、连接源选择你的oracle数据&#xff0c;目标选mysql 即可成功导入

Python中的异常处理4-2

在《Python中的异常处理4-1》中提到&#xff0c;用except可以捕获所有的异常。实际上&#xff0c;在程序运行的过程中&#xff0c;出现异常的原因有很多&#xff0c;比如下标超出范围、除数为0、变量未定义等。 1 except语句加上具体的异常类型 可以在except语句之后加上具体…

cms之wordpress主题安装

WordPress主题安装教程的方法有两种&#xff0c;分为在线安装和上传安装&#xff0c;下面是主题详细安装方法的步骤。 后台在线安装主题 从后台的主题界面在线安装主题是最方便的WordPress主题安装方式。方法如下&#xff1a; 1 在WordPress后台&#xff0c;转到外观→主题 …

yarn的资源优化的调整参数

yarn的资源优化的调整参数 官网&#xff1a; https://hadoop.apache.org/docs/r3.3.6/hadoop-yarn/hadoop-yarn-common/yarn-default.xml 没事多看官网哈 yarn.nodemanager.resource.memory-mb&#xff1a;用于设置NodeManager节点的总内存容量&#xff0c;单位为MB。根据集…

php预约系统源码 网上预约小程序开发源码 整套系统搭建让在线预约更便捷

随着互联网技术的发展&#xff0c;越来越多的服务行业开始通过网上预约系统来实现便捷的客户管理和服务提供。PHP预约系统源码作为一种成熟的技术方案&#xff0c;可以帮助商家快速搭建自己的预约系统&#xff0c;提高工作效率&#xff0c;优化客户体验。 分享一个php预约系统…

C#教学辅助系统网站as.net+sqlserver

本教学辅助系统系统从两种用户角度进行功能划分。 1、学生部分&#xff1a; 1.1&#xff1a;新闻查看&#xff1b; 1.2&#xff1a;课程公告查看&#xff1b; 1.3&#xff1a;用户注册&#xff1b; 1.4&#xff1a;在线留言&#xff1b; 1.5&#xff1a;资料下载&#xff1b; …