动态规划DP 总览

最长上升子序列模型

在这里插入图片描述

1. 最长上升子序列

1.1 怪盗基德的滑翔伞

在这里插入图片描述
(左端点到任意点的上升子序列 / 右端点到任意点的上升子序列)

1.1.1 登山

在这里插入图片描述
(左端点到任意点的上升子序列 + 右端点到同一点的上升子序列)

1.1.2 合唱队形

(同登山,左端点到任意点的上升子序列 + 右端点到同一点的上升子序列)

1.2 友好城市

在这里插入图片描述
(先排序,后上升子序列)

1.3 最长上升子序列和

(最长上升子序列的长度 更改为 数值之和)

1.4 导弹拦截

(一道系统所能拦截导弹的最多数量:最长上升子序列)
(拦截所有导弹所需的系统数:贪心+最长上升子序列)

1.4.1 导弹防御系统

(上升系统 /下降系统:DFS暴搜 + 最长上升子序列)

1.5 最长公共上升子序列

(公共子序列+上升子序列)

背包模型

在这里插入图片描述

2.1 01 背包

在这里插入图片描述
(每个物品只能选择一次)

应用:采药+装箱问题+数字组合

应用:能量石

(贪心,排序,池底啊能量是所花时间,所得能量,耗损能量)

2.2 完全背包

在这里插入图片描述
(每个物品有无限个)

应用:买书

(n元钱买书,买书方案?)

2.3 多重背包1 2 3

在这里插入图片描述

(每个物品有有限s个)(朴素版,二进制优化/打包,单调队列)

应用:庆功会

(购买奖品的价格、价值,拨款金额)

2.4 二维背包

在这里插入图片描述
(每个物品有两个约束条件 体积+重量)

2.5 分组背包

在这里插入图片描述
(同一组内的物品中最多只能选一个)

应用:机器分配

在这里插入图片描述
(总公司,分公司,盈利)

2.6 有依赖的背包问题

在这里插入图片描述
(树形结构,如果选择一个物品,则必须选择它的父结点)

2.7 背包问题求方案数

(输出最后选法的方案数)

状态机

应用:大盗阿福

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值