动态规划--Leetcode746
数组的每个索引做为一个阶梯,第 i个阶梯对应着一个非负数的体力花费值 cost[i](索引从0开始)。
每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。
您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。
示例 1:
输入: cost = [10, 15, 20]
输出: 15
解释: 最低花费是从cost[1]开始,然后走两步即可到阶梯顶,一共花费15。
示例 2:
输入: cost = [1, 100, 1, 1, 1, 100, 1, 1, 100, 1]
输出: 6
解释: 最低花费方式是从cost[0]开始,逐个经过那些1,跳过cost[3],一共花费6。
本题一个容易忽略的是如果他离最后一个台阶只有两步,那么他可以一步跨上去而不计算最后一个台阶的花费
public class Solution746 {
public static int minCostClimbingStairs(int[] cost) {
int t = cost.length;
int i;
int[] dp = new int[t+1];
dp[0] = cost[0];
dp[1] = cost[1];
for(i=2;i<t;i++)
{
dp[i]=java.lang.Math.min(dp[i-1], dp[i-2])+cost[i];
}
return java.lang.Math.min(dp[t-1],dp[t-2]);
}
public static void main(String[] args)
{
int[] cost = {1,1,0,0};
System.out.println(minCostClimbingStairs(cost));
}
}
动态规划--Leetcode746相关推荐
- 【代码随想录】-动态规划专题
文章目录 理论基础 斐波拉契数列 爬楼梯 使用最小花费爬楼梯 不同路径 不同路径 II 整数拆分 不同的二叉搜索树 背包问题--理论基础 01背包 二维dp数组01背包 一维数组(滚动数组) 装满背包 ...
- Leetcode动态规划专题(共38道)
某一问题有很多重叠子问题 每一状态一定由上一状态推导出来 而贪心没有状态推导,而是直接选局部最优 解决方式: 确定dp数组(dp table)以及下标的含义 确定递推公式 dp数组如何初始化 确定遍历 ...
- 动态规划(持续更新、整理)
动态规划 记忆化搜索 不同路径:leetcode-62 分割回文串:leetcode-131 单词拆分II:leetcode-140 戳气球:leetcode-312 零钱兑换:leetcode-32 ...
- 伍六七带你学算法 动态规划 ——不同路径
力扣 62. 不同路径 难度 中等 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为"Start" ). 机器人每次只能向下或者向右移动一步.机器人试图达到网格 ...
- 由动态规划计算编辑距离引发的思考
简单介绍 编辑距离算法: https://www.cnblogs.com/BlackStorm/p/5400809.html https://wizardforcel.gitbooks.io/the- ...
- LeetCode 10. Regular Expression Matching python特性、动态规划、递归
前言 本文主要提供三种不同的解法,分别是利用python的特性.动态规划.递归方法解决这个问题 使用python正则属性 import reclass Solution2:# @return a bo ...
- 【动态规划】Part1
1. 硬币找零 题目描述:假设有几种硬币,如1.3.5,并且数量无限.请找出能够组成某个数目的找零所使用最少的硬币数. 分析: dp [0] = 0 dp [1] = 1 + ...
- 2016.4.2 动态规划练习--讲课整理
1.codevs1742 爬楼梯 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 小明家外面有一个长长的楼梯,共N阶.小明的腿 ...
- 算法设计与分析第4章 动态规划(二)【DP序列问题】
第3章 动态规划(二)[DP序列问题] 3.2 DP序列问题 (51nod的动态规划教程很不错,讲解很详细,以下分析来自51nod) 1.矩阵取数问题 给定一个m行n列的矩阵,矩阵每个元素是一个正整数 ...
最新文章
- 郑州大学计算机学科导论,郑州大学计算机导论大一试题答案.doc
- 机器学习笔记(九)---- 集成学习(ensemble learning)【华为云技术分享】
- 解决windows安装mongodb出现dbexit: rc:100错误
- logistic regression_【科研加油站】SPSS操作之有序Logistic回归的详细教程
- python 抽签程序_抽签程序源码
- Excel图表⑤—数据可视化的极简之美
- 使用阿里巴巴矢量图标库下载所需的小图标
- git submodule update --init时报错:Failed to recurse into submodule path third_party/protobuf
- 412 Precondition Failed
- 安卓生成keystore文件
- Word打开docx文件报错
- NSG是什么?适用于哪些产品?
- Windows监控——性能指标详解
- 软件项目开发,交付文档(全)
- AE二次开发-获取图层的属性表
- #include 和 #include的区别
- 当你热爱现实, 世界就是你照见的自己
- 华为服务器安装nas系统,服务器 nas 配置
- iperf java_网络性能测试工具iperf详解
- win10 anaconda3环境下安装tensorflow-GPU(仅需两行代码即可)
热门文章
- 程序员面试金典 - 面试题 16.06. 最小差(排序+双指针)
- mysql cluster 查看数据库表名称_MySQL Cluster如何创建磁盘表方法解读
- android闹钟测试工具,android开发:AlarmManager闹钟管理器的实例
- 亚马逊出的平板电脑_亚马逊推出了这款不到400元的平板电脑!学生党的福音!...
- 在Pivotal Web Service上发布Spring Boot应用
- 【思考】PHP——成也Web,败也Web
- 史上最强大型分布式架构详解:高并发+数据库+缓存+分布式+微服务+秒杀
- 开源开放 | 中国近代历史人物知识图谱
- 研讨会 | 知识图谱前沿技术课程暨学术研讨会(武汉大学站)
- 玩转算法值面试-第五章 -在链表中穿针引线