![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LIS
文章平均质量分 69
Ypuyu
Ypuyu
展开
-
[Mdp] lc673. 最长递增子序列的个数(LIS+算法优化+算法拓展)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:673. 最长递增子序列的个数前置知识:[Mdp] lc300. 最长递增子序列(LIS+LIS贪心优化+LIS详解+模板题)本题拓展版,相同的最长上升子序列计数仅算一次。《算法竞赛进阶指南》, usaco training 4.3-----314. 低买2. 题目解析LIS 的简单拓展,中间记录方案数即可。简单回顾:状态定义:f[i]:以 i 结尾的最长上升子序列个数。状态转移:枚举 j,范围 0~i-1,当 a[j] &原创 2021-09-20 11:37:09 · 270 阅读 · 0 评论 -
[Mdp] lc1035. 不相交的线(LCS+LIS+重点知识理解)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:1035. 不相交的线相关:不太相关:[线性dp] aw1012. 友好城市(最长上升子序列模型+思维)强相关:[线性dp] aw897. 最长公共子序列(重要模板题+最长公共子序列模型)弱相关:[线性dp] aw895最长上升子序列(知识理解+重要模板题+最长上升子序列模型+LCS转化LIS)力赞题解,知识总结,对比 LCS 与 LIS 特性,深挖 LCS 状态分类,三叶姐yyds:【宫水三叶の相信科学系列】求「最值问题」只需原创 2021-08-26 00:34:53 · 192 阅读 · 0 评论 -
[线性dp] aw3499. 序列最大收益(线性dp+最长上升子序列+状态定义+中兴2021)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:3499. 序列最大收益相关题目:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)2. 题目解析很不错的一道 dp 问题,关键是状态定义与状态转移以及发现性质后的相关优化。在状态转移中,是以倒数第二个数是哪个进行集合划分的,这点与 LIS 最长上升子序列问题的状态划分非常像,所以本题可以说是 LIS 问题的变种题目。分析题目性质可以发现,第一个数和最后一个数被选一定不会使得最优解变差,所以可以直接将第一个数初始化,求解答案时,原创 2021-05-13 08:42:13 · 119 阅读 · 0 评论 -
[线性dp] 导弹防御系统(最长上升子序列模型+贪心+dfs)
文章目录0. 前言1. LIS +贪心+dfs0. 前言强相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型) 贪心解法[线性dp] 拦截导弹(最长上升子序列模型+贪心)1. LIS +贪心+dfs187. 导弹防御系统重点: 线性 dp、LIS 问题、贪心思路:[线性dp] 拦截导弹(最长上升子序列模型+贪心)是高度只能不断下降。本题高度可以不断上升和不断下降,但需要维护其单调性。即,最少使用多少个上升、下降子序列将整个序列覆盖掉。[线性dp] 拦截导弹(最长上升子序列原创 2020-11-18 18:40:09 · 227 阅读 · 0 评论 -
[线性dp] 拦截导弹(最长上升子序列模型+贪心)
文章目录0. 前言1. LIS +贪心0. 前言强相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型) 贪心解法1. LIS +贪心1010. 拦截导弹重点: 线性 dp、LIS 问题、贪心思路:问题就是最少用多少个下降子序列来覆盖掉整个子序列首先第一问就是寻找最长的下降子序列。 可以直接转化为 LIS 问题第二问为贪心问题,首先简单说明下贪心直觉和证明方法假设现在存在很多个子序列,那么当前遍历到的这个导弹不管接到那个子序列的后面,目前来讲,它都是做这些子序列的结尾元原创 2020-11-18 17:44:48 · 296 阅读 · 0 评论 -
[线性dp] aw1012. 友好城市(最长上升子序列模型+思维)
文章目录0. 前言1. LIS 变种+思维抽象0. 前言相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)1. LIS 变种+思维抽象1012. 友好城市本题很考思维抽象。重点: 线性 dp、LIS 问题、思维抽象思路:题目保证河的南北两岸城市能够一一对应起来,成为一个友好城市那么当我们按照南岸城市坐标从小到大在数轴上排好序,北岸的城市不需要进行移动顺序从小到大枚举排序一岸,并找其对应的友好城市。能够发现城市间如果航道交叉,那么意味着构成一个 叉 的形状,由于排序一岸原创 2020-11-17 18:39:05 · 205 阅读 · 0 评论 -
[线性dp] 最大上升子序列和(最长上升子序列模型+经典)
文章目录0. 前言1. LIS 变种+经典变种0. 前言相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)1. LIS 变种+经典变种1016. 最大上升子序列和本题很考思维抽象。重点: 线性 dp、LIS 问题、思维抽象思路:状态定义:f[i] 表示所有以 a[i] 结尾的上升子序列和的最大值状态转移:分类依据:倒数第二个数是哪个数,可将状态分类为倒数第二个数为空、为a[1]、a[2]、...、a[i-1],总共是有 i 种情况,假设倒数第二个数是 a[k原创 2020-11-17 19:14:23 · 219 阅读 · 0 评论 -
[线性dp] 合唱队形(最长上升子序列模型)
文章目录0. 前言1. LIS 变种模型0. 前言相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)[线性dp] 怪盗基德的滑翔翼(最长上升子序列模型)强相关:[线性dp] 登山(最长上升子序列模型)1. LIS 变种模型482. 合唱队形重点: 线性 dp、LIS 问题思路:先严格上升、再严格下降。则正向求一遍 LIS、反向再求一遍 LIS,两者相加再减去重复点 1 即可和 [线性dp] 登山(最长上升子序列模型) 同源,踢出去最少的人,等价于找到最长的上升、下降原创 2020-11-17 17:33:05 · 173 阅读 · 0 评论 -
[线性dp] 登山(最长上升子序列模型)
文章目录0. 前言1. LIS 变种模型0. 前言相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)[线性dp] 怪盗基德的滑翔翼(最长上升子序列模型)1. LIS 变种模型1014. 登山重点: 线性 dp、LIS 问题思路:先严格上升、再严格下降。则正向求一遍 LIS、反向再求一遍 LIS,两者相加再减去重复点 1 即可区别与 [线性dp] 怪盗基德的滑翔翼(最长上升子序列模型) 的是,怪盗基德是在某个位置上单向的 LIS 求解,其正反求完取 MAX,而本题是在某个原创 2020-11-17 17:26:56 · 241 阅读 · 0 评论 -
[线性dp] 怪盗基德的滑翔翼(最长上升子序列模型)
文章目录0. 前言1. LIS 变种模型0. 前言相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)1. LIS 变种模型1017. 怪盗基德的滑翔翼重点: 线性 dp、LIS 问题思路:理解题目后就是个正向、反向的 LIS也可理解为最长上升,最长下降子序列都行在此不讨论 O(nlogn)O(nlogn)O(nlogn) 做法。[线性dp] 最长上升子序列(模板题+最长上升子序列模型) 自行学习~正反两边 LIS做法代码:// 以后,表示次数,多组循环输入这个参数原创 2020-11-17 16:36:48 · 577 阅读 · 0 评论 -
[Mdp] lc300. 最长递增子序列(LIS+LIS贪心优化+LIS详解+模板题)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:300. 最长递增子序列前导题:[线性dp] 最长上升子序列(模板题+最长上升子序列模型+LCS转化LIS)2. 题目解析很经典的一道题,重点在于其 O(nlogn)O(nlogn)O(nlogn) 的写法。时间复杂度:O(n2)O(n^2)O(n2)、O(nlogn)O(nlogn)O(nlogn)空间复杂度:O(n)O(n)O(n)常规 O(n2)O(n^2)O(n2):class Solution {public:原创 2021-05-15 12:13:55 · 211 阅读 · 0 评论 -
[LCS+LIS] aw3510. 最长公共子序列(LCS转化LIS+上海交通大学考研机试题)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:3510. 最长公共子序列相关题目:[线性dp] 最长公共子序列(模板题+最长公共子序列模型)[线性dp] 最长上升子序列(模板题+最长上升子序列模型+LCS转化LIS)[Hdp] lc1713. 得到子序列的最少操作次数(LIS+LCS优化+周赛222_4) 在力扣周赛压轴题里的应用。2. 题目解析非常明显的一道 LCS 转 LIS 问题。具体看 [线性dp] 最长上升子序列(模板题+最长上升子序列模型+LCS转化LIS) 的后半原创 2021-05-15 11:30:31 · 251 阅读 · 0 评论 -
[线性dp] 最长公共上升子序列(最长上升子序列模型+最长公共子序列模型+经典+思维+状态划分)
文章目录0. 前言1. LIS +LCS+思维+状态划分0. 前言相关:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)[线性dp] 最长公共子序列(模板题+最长公共子序列模型)这是一道非常非常优秀的 LIS、LCS 问题。1. LIS +LCS+思维+状态划分272. 最长公共上升子序列提前需要学习[线性dp] 最长公共子序列(模板题+最长公共子序列模型)的集合划分方式,很秀的一个方式。重点: 线性 dp、LIS 问题、LCS 问题思路:状态定义:f[i][j] 所原创 2020-11-18 20:23:31 · 922 阅读 · 0 评论 -
[Hdp] lc1713. 得到子序列的最少操作次数(LIS+LCS优化+LCS转LIS+周赛222_4)
文章目录1. 题目来源2. 题目解析1. 题目来源链接:5644. 得到子序列的最少操作次数2. 题目解析前导题:[线性dp] 最长上升子序列(模板题+最长上升子序列模型)很重要的一个知识点。当数组元素不重复的时候,LCS 问题可以转化成 LIS 问题。LIS 采用贪心可以将时间复杂度从 O(n2)O(n^2)O(n2) 搞到 O(nlogn)O(nlogn)O(nlogn),具备处理 10^5 数据范围的能力。不过 LIS 的贪心写法设计到二分,边界蛮多的。建议直接背下板子即可!时原创 2021-01-03 18:31:39 · 175 阅读 · 0 评论 -
[线性dp] aw895最长上升子序列(知识理解+重要模板题+最长上升子序列模型+LCS转化LIS)
文章目录0. 前言1. 数字三角形+模板题0. 前言LIS(Longest Increasing Subsequence) 最长上升子序列 。一个数的序列 bi,当 b1 < b2 < … < bS 的时候,我们称这个序列是上升的。对于给定的一个序列 (a1, a2, …, aN),我们可以得到一些上升的子序列 (ai1, ai2, …, aiK),这里 1 <= i1 < i2 < … < iK <= N。比如,对于序列 (1, 7, 3, 5, 9原创 2020-11-10 21:10:03 · 651 阅读 · 0 评论