摘要: 一.背包DP 1. 0/1背包 2.完全背包 3.多重背包 4.分组背包 二.线性DP 三.背包DP 阅读全文
posted @ 2024-02-17 19:01 _yuen 阅读(10) 评论(0) 推荐(1) 编辑
摘要: 合并类动态规划 合并:意思就是将两个或多个部分进行整合,当然也可以反过来,也就是是将一个问题进行分解成两个或多个部分。 特征:能将问题分解成为两两合并的形式 求解:对整个问题设最优值,枚举合并点,将问题分解成为左右两个部分,最后将左右两个部分的最优值进行合并得到原问题的最优值。有点类似分治算法的解题 阅读全文
posted @ 2024-02-17 18:38 _yuen 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 线性动态规划: 不用多说,主要应用于求上升子序列,下降子序列等 直接看例题: 样例输入: 13 7 9 16 38 24 37 18 44 19 21 22 63 15 样例输出: max=8 7 9 16 18 19 21 22 63 解: #include<bits/stdc++.h> usin 阅读全文
posted @ 2024-02-17 17:31 _yuen 阅读(5) 评论(0) 推荐(3) 编辑
摘要: 一. 背包DP 1. 0/1背包: 要素: a56爆大奖在线娱乐物品只有选一次或不选两种选择 n个物品 ,a56爆大奖在线娱乐物品只有一件,第i个物品体积为vi,价格pi,现在有一个体积为V的背包,选出若干件物品使背包里价值最大 装入第i件物品已用体积为j时,有两种选择: 1.不放入第i件物品:f[i][j]=f[i-1][j] 阅读全文
posted @ 2024-02-17 16:45 _yuen 阅读(10) 评论(0) 推荐(1) 编辑