随笔分类 -  线性dp

摘要:题目 题目链接:https://www.ybtoj.com.cn/contest/116/problem/1 \(n\times m\leq 10^6\)。 思路 不难发现行和列是独立的,也就是其实我们把行和列的折纸顺序任意交换都是可以的。 那么一个矩形可以被折出的充要条件是它四条边分别所在的行或列 阅读全文
posted @ 2021-02-17 16:16 stoorz 阅读(70) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.ybtoj.com.cn/contest/115/problem/1 \(n\leq 10^5,m\leq 10^{12},a_i,b_i\leq 2\times 10^9\)。 思路 我们记 \(\text{nxt}_i\) 表示满足 \(a_j\geq b 阅读全文
posted @ 2021-02-16 19:30 stoorz 阅读(83) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P3214 众所周知卡农是一种复调音乐的写作技法,小余在听卡农音乐时灵感大发,发明了一种新的音乐谱写规则。 他将声音分成 \(n\) 个音阶,并将音乐分成若干个片段。音乐的每个片段都是由 1 到 \(n\) 个音阶构成 阅读全文
posted @ 2021-01-26 14:48 stoorz 阅读(116) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P4707 为了打开返回现世的大门,Yopilla 需要制作开启大门的钥匙。Yopilla 所在的迷失大陆有 \(n\) 种原料,只需要集齐任意 \(k\) 种,就可以开始制作。 Yopilla 来到了迷失大陆的核心地 阅读全文
posted @ 2021-01-25 16:35 stoorz 阅读(71) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P4859 已经使 Madoka 有签订契约,和自己一起战斗的想法后,Mami 忽然感到自己不再是孤单一人了呢。 于是,之前的谨慎的战斗作风也消失了,在对 Charlotte 的傀儡使用终曲——Tiro Finale 阅读全文
posted @ 2021-01-20 10:26 stoorz 阅读(141) 评论(0) 推荐(1)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P4762 初始有一个空串,利用下面的操作构造给定串 \(S\)。 串开头或末尾加一个字符。 串开头或末尾加一个该串的逆串。 求最小化操作数,\(|S| \leq 10^5\)。 思路 考虑在 PAM 上 dp。一个节 阅读全文
posted @ 2021-01-12 11:08 stoorz 阅读(146) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/U142633 有 \(m\) 个物品,第 \(i\) 个物品有两个参数 \(a_i,b_i\),将这 \(n\) 个物品放进 \(m\) 个格子中,如果第 \(i\) 个物品放了 \(p_i\) 个,那么这种放置方法 阅读全文
posted @ 2020-12-03 19:05 stoorz 阅读(80) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.ybtoj.com.cn/contest/66/problem/3 \(|A|\leq 10^6,|B|\leq 10^3\)。 思路 直接设 \(f[i][j]\) 表示两个串分别匹配到第 \(i,j\) 位的方法已经行不通了。但是因为 \(|B|\leq 阅读全文
posted @ 2020-12-01 15:10 stoorz 阅读(82) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P1412 你驾驶着一台带有钻头(初始能力值 \(w\))的飞船,按既定路线依次飞过 \(n\) 个星球。 星球笼统的分为 \(2\) 类:资源型和维修型。( \(p\) 为钻头当前能力值) 资源型:含矿物质量 \(a 阅读全文
posted @ 2020-11-30 19:08 stoorz 阅读(137) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/U142584 Peter 给 Jack 展示了 \(n\) 个长度相同的 $01$ 串,记两个 $01$ 串 \(x,y\) 的拼接操作为 \(f(x,y)\)。则 \(f(x,y)=\) 以 \(x\) 为前缀, 阅读全文
posted @ 2020-11-27 16:23 stoorz 阅读(86) 评论(0) 推荐(0)
摘要:题目: 题目链接:https://www.luogu.com.cn/problem/U142297 有 \(n\) 个白色棋子,\(m\) 个黑色棋子,现在需要把他们排成一排,要求对于任意一段棋子,其中的白色棋子和黑色棋子的差不能超过 \(t\),求棋子排列方案数对 $10^9+7$ 取模的结果。 阅读全文
posted @ 2020-11-25 14:48 stoorz 阅读(408) 评论(0) 推荐(1)
摘要:题目 题目链接:https://www.ybtoj.com.cn/contest/62/problem/4 思路 抠一张 YbtOJ 题解上的图 如果想要构成一棵树,那么一定不能有一个位置有三个序列覆盖。 那么我们看上图的 \(x\),它下面的所有点区间左端点一定大于它上面的区间的右端点,并且它下面 阅读全文
posted @ 2020-11-24 19:37 stoorz 阅读(399) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.ybtoj.com.cn/contest/67/problem/3 思路 下文设 \(\mathrm{stepsPerSecond}\) 为 \(t\),\(\mathrm{timeLimit}\) 为 \(m\)。 首先因为必须走 \(t\) 的倍数步,所以 阅读全文
posted @ 2020-11-23 21:09 stoorz 阅读(66) 评论(0) 推荐(0)
摘要:题目 题目链接:http://noip.ybtoj.com.cn/contest/102/problem/1 思路 可以视作将 \(m\) 个位置分成 \(n\) 份,第 \(i\) 份上需要填上相同且在 \([l_i,r_i]\) 中的数的积的和。 所以可以设 \(f[i][j][k]\) 表示前 阅读全文
posted @ 2020-10-19 18:32 stoorz 阅读(106) 评论(0) 推荐(0)
摘要:题目 题目链接:https://gmoj.net/senior/#main/show/6804 众所周知,Jerry 鼠是一只非常聪明的老鼠。Jerry 聪明到它可以计算 64 位有符号整形数字的加减法。现在,Jerry 写下了一个只由非负整数和加减号组成的算式。它想给这个算式添加合法的括号,使得算 阅读全文
posted @ 2020-10-14 19:44 stoorz 阅读(167) 评论(0) 推荐(0)
摘要:题目 题目链接:http://noip.ybtoj.com.cn/contest/86/problem/3 思路 设 \(f[i][j][1/2/3/4]\) 表示前 \(i\) 个数,最后一个数选的是 \(j\),且最后一个数是在第一行 / 第二行 / 第三行升序 / 第三行降序的最大选中个数。 阅读全文
posted @ 2020-10-13 15:21 stoorz 阅读(130) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P5675 Alice 和 Bob 在玩一个古老的游戏。现在有若干堆石子,Alice 和 Bob 轮流取,每次可以选择其中某一堆的石子中取出任意颗石子,但不能不取,谁先取完使得另一个人不能取了算赢。 现在场地上有$N$ 阅读全文
posted @ 2020-10-12 20:59 stoorz 阅读(240) 评论(0) 推荐(0)
摘要:题目 题目链接:https://ac.nowcoder.com/acm/contest/7745/C 牛牛在树剖姐姐的数学考试里出了一个题,但是树剖姐姐不会做,于是她向您求助。 求 $1\sim n$ 的排列,有 \(m\) 个限制条件,第 \(i\) 个限制条件 \(p_i\) 表示前 \(p_i 阅读全文
posted @ 2020-10-10 07:17 stoorz 阅读(132) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P6855 有 \(n\times m\) 的方格矩阵,小 A 从 \((1,1)\) 出发到 \((n,m)\) ,只能向下或向右走,获得的分数为他经过方格的权值之和。 已知每个方格 $(i,j) $的权值 \(a_ 阅读全文
posted @ 2020-10-04 22:35 stoorz 阅读(344) 评论(0) 推荐(0)
摘要:题目 题目链接:https://www.luogu.com.cn/problem/P2679 有两个仅包含小写英文字母的字符串 \(A\) 和 \(B\)。 现在要从字符串 \(A\) 中取出 \(k\) 个互不重叠的非空子串,然后把这 \(k\) 个子串按照其在字符串 \(A\) 中出现的顺序依次 阅读全文
posted @ 2020-09-22 19:00 stoorz 阅读(103) 评论(0) 推荐(0)