序列dp
LCS问题
题目1
给定
题解1
两个序列都是排列,那么可以考虑建立映射关系跑LIS
题目2
给定
题解2
就是个简单的多序列dp
设
CF314E Sereja and Squares(括号序列问题套路1)
题目
给定一个长度为
题解
- 括号序列问题,往往就是把左括号看成
,右括号看成 ,我们只需要保证任意一个前缀大于等于 ,且总和为 ,就代表是个合法括号序列了
令
- 若第
个字符是左括号,则能转移到 。 - 若第
个字符是右括号,则能转移到 。 - 若第
个字符是问号,则能转移到 与
对于这个问题,只需要考虑
BZOJ4922 Karp-de-Chant Number(括号序列问题套路2)
题目
给出一些括号序列,要求选择一些括号序列拼接成一个合法的括号序列,使得总长最大
长度与个数均不超过
题解
首先将每个括号序列合法的括号对进行一个消除,那么最终得到的括号序列一定形如
这像极了P4025 [PA2014]Bohater,这里简述一下贪心思路:
- 先排
的,再排 的 - 对于
的,按照 从小到大排 - 对于
的,倒着考虑,发现本质是将上一种情况的 对换了,按照 从到小排即可
转移和上题大同小异,不在赘述
P4933 大师(特殊的子序列提取问题)
题目
给定一个长度为
题解
一个朴素的想法是,设
时间复杂度是
于是时间复杂度降为
P1874 快速求和(子段划分+背包)
题目
给定一个数字串
题解
记
从后往前枚举
P2758 编辑距离(经典多序列问题)
题目
给定字符串
- 插入一个字符
- 删除一个字符
- 将一个字符替换成另一个字符
求将
字符串长度不超过
题解
设
具体解释下的话是
: 的前 位与 的前 位对上了,现在要在 中删除一个字符 的前 位与 的前 位对上了,现在要在 中插入一个字符 直接把 变成 ,或者不用变
P2679 [NOIP2015 提高组] 子串
题目
有两个仅包含小写英文字母的字符串
现在要从字符串
题解
设
但是,观察样例,
于是有
滚掉
P1435 [IOI2000] 回文字串 / [蓝桥杯 2016 省] 密码脱落 (回文串问题转成最长公共子序列问题)
题目
给定一个长为
题解
一种sb做法是,设
if(s[l]==s[r]) f[l][r]=f[l+1][r-1];
else f[l][r]=min(f[l+1][r],f[l][r-1])+1;
一种比较优美的做法是,我们令原来的字符串为
那么我们求出
CF568E Longest Increasing Subsequence (最大化最长上升子序列长度+dp方案输出)
题目
给定一个长度为
你有
要求最大化最长上升子序列的长度。
题解
首先,由于两个同样的元素填到序列里面对答案是没有任何贡献的,因此我们得到最优填法所使用的数必然两两不同
设
- 若该位置上的数为
,那么在 上二分找到 的最大的 ,然后依次更新: - 若该位置是空缺的,枚举我们要填补的数为
找到填补空缺的数中 中最大的 更新为 ,由于用于填补空缺的数随 的增大是是单调递增的,所以这里可以使用指针处理,时间复杂度
考虑如何还原,由于我们求
若该位置是空缺的,则先在它前面的不是空缺的位置里找到位置
时间复杂度
HDU 1421 搬寝室 (通过特殊性质将分组问题转为dp问题)
题目
有
在你要去搬行李,要搬
要求最小化疲惫度之和
题解
首先我们注意到dp是很难做
假设有
于是我们设
- 如果将第
个数试做一对中较大的那个数,那么显然它与 配对是一定是比跟前面的数配对更优的,同时如果此时要求配成 对,那么就就要保证前 个数可以配成 对,于是我们的转移如下
- 如果不选第
个数,那么转移如下
时间复杂度
BZOJ 1786 配对 (最小化逆序对数)
题目
给你一个长度为
保证所有的数都在
题解
首先考虑一个性质,我们填进去的数一定是单调不降的,证明可以考虑交换填进去的两个数
所以我们每填进去一个数只会对被最开始序列中就有的那些数贡献逆序对数,假设我们填的数是
时间复杂度
Atcoder Beginner Contest 320 F (序列上路径dp)
题面
给定
题解
有一个比较显然的dp,设
转移时讨论是否加油,设
- 如果不加油,转移为
- 如果从
出发时加油,转移为
- 如果返程回到
时加油,转移为
时间复杂度
posted on 2023-10-27 18:00 star_road_xyz 阅读(36) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】