首页 > 其他分享 >动态规划01

动态规划01

时间:2023-06-30 16:46:00浏览次数:42  
标签:初始化 01 台阶 数组 动态 规划 dp

动态规划核心要义 这一步的数据依据上一步或者上两步的数据

动态规划五部

  1. 确定dp数组(dp table)以及下标的含义
  2. 确定递推公式
  3. dp数组如何初始化
  4. 确定遍历顺序
  5. 举例推导dp数组

动态规划第一题 斐波那契数列

dp[i] 表示第i个数列的值

递推公式已经给出 f(n) =f(n-1)+f(n-2)

初始化已经给出 第一个数等于0 第二个数等于1

遍历顺序从前到后

 

第二题

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

dp数组定义 dp【i 】 表示第i'个数字,

因为每次只跳1步或者两步,所以第n阶台阶只会有两种方式到达,所以dp【i】 =dp{i-1}+dp{i-2}

初始化 题目已经规定n为正整数 所以 dp【1】=1,dp【2】=2  所以n直接从3开始计算

计算顺序从前到后

 

 

第三题

 同样的 每次只能上两个台阶 那么最小花费 就是8比较一步上来和两步上来哪个花销大

初值已经给了  从第一个台阶上和第二个台阶上都可以 所以dp数组第一个和第二个都等于0

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

标签:初始化,01,台阶,数组,动态,规划,dp
From: https://www.cnblogs.com/hook-thresh/p/17516989.html

相关文章

  • P3975 [TJOI2015] 弦论 题解
    一、题目描述:给你一个长度为$n$的字符串,字符串由$26$个小写字母组成,求第$k$大的字串。给定参数$t$:$t=0:\位置不同的相同字串只算一个。$$t=1:\位置不同的相同字串算作多个。$若字串数量不足$k$个,输出$-1$。数据范围:$1\le......
  • 601. 体育馆的人流量
    601.体育馆的人流量SQL架构表:Stadium+---------------+---------+|ColumnName|Type|+---------------+---------+|id|int||visit_date|date||people|int|+---------------+---------+visit_date是表的主键......
  • 585. 2016年的投资
    585.2016年的投资SQL架构写一个查询语句,将 2016年(TIV_2016)所有成功投资的金额加起来,保留2位小数。对于一个投保人,他在2016年成功投资的条件是:他在2015年的投保额 (TIV_2015)至少跟一个其他投保人在2015年的投保额相同。他所在的城市必须与其他投保人都......
  • 【JVM 监控-命令行 01】
    一、jps命令(JavaProcessStatus)-查看正在运行的Java进程1、语法:jps[options][hostid]hostid参数:可以远程监控其他机器,但是需要安装jstatd,搭配使用jps-q:仅显示LVMID,即本地虚拟机唯一id,不显示主类的名称等jps-l:输出应用程序主类的全类名或如果进程执行的是jar包,则......
  • RTE24012 直流电源 TE Connectivity 芯脉芯城
    RTE24012是一款电源模块,它提供可靠的直流电源转换功能。以下是对RTE24012的详细参数描述:输入电压范围:RTE24012的输入电压范围为18V至36V。这使得它能够适应不同的电源输入条件。输出电压:RTE24012的输出电压为12V。它提供稳定的直流电源输出,以满足设备或系统的电源需求。输出电流......
  • 401. 二进制手表
    这里可以通过遍历的方式做出来。i从0~1111111111进行遍历,如果1的个数等于要求的个数tournedOn,此时进一步判断时钟位和分钟为是否符合要求,满足要求则放入结果容器中。classSolution{public:vector<string>readBinaryWatch(intturnedOn){vector<string>res;......
  • SpringBoot--尚硅谷2018
    #一、SpringBoot入门B站视频地址:72_尚硅谷_结束语_哔哩哔哩_bilibili1、SpringBoot简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、微服务2014,martinfowler微服务:架构风格(服务微化)一个应用应该是一组小型服务;可以通......
  • 带负载转矩观测器的永磁同步电动机控制方法。 负载转矩观测器无论是对静态的负载变化
    带负载转矩观测器的永磁同步电动机控制方法。负载转矩观测器无论是对静态的负载变化还是动态的负载变化都有很好的观测效果。一方面可以较好的跟踪负载转矩的变化,另一方面可以作为前馈减小电机转速的波动。原创文章,转载请说明出处,资料来源:http://imgcs.cn/5c/672148599043.html......
  • day114- 动态sql
    动态SQL解决拼接SQL语句字符串时的问题。if标签if标签可通过test属性的表达式进行判断,若表达式的结果为true,则标签中的内容会执行;反之标签中的内容不会执行<!--List<Emp>getEmpByCondition(Empemp);--><selectid="getEmpByCondition"resultType="com.gu.mybatis.poj......
  • 第一讲 01背包问题
    题目有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。基本思路这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。用子问题定义状态:即f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值......