随笔分类 - dp
摘要:洛谷传送门 CF 传送门 考虑给图分层,一层的点一一对应上一层的一些点。设 \(f_{i, j}\) 为考虑了前 \(i\) 个点,最后一层有 \(j\) 个点,除了最后一层点的其他点度数限制已经满足的方案数。 转移系数是 \(g_{i, j, k}\) 表示这一层有 \(i\) 个点,上一层有 \
阅读全文
摘要:洛谷传送门 AtCoder 传送门 太厉害了!!!!!! 首先竞赛图有个性质,若存在环则一定存在三元环。 先把 DAG 的情况(一条链)特判了。然后缩点。发现非链底的部分不能存在大小 \(> 1\) 的 SCC。所以枚举非链底的部分有多少点,转化为 SCC 的情况。 发现对于任意点(设为 \(1\)
阅读全文
摘要:洛谷传送门 CF 传送门 好厉害。 特判 \(k = 1\)。首先经过观察,我们可以按照 \(k\) 的奇偶性讨论: \(k\) 为偶数,有一个中心点挂了若干条长度为 \(\frac{k}{2}\) 的链。 \(k\) 为偶数,有两个中心点,两边挂了若干条长度为 \(\frac{k}{2}\) 的链
阅读全文
摘要:洛谷传送门 LOJ 传送门 dp 好题。 首先有一个显然的状态,设 \(f_{i, x, y}\) 为第 \(i\) 列上下两格的颜色分别为 \(x, y\) 的方案数。但是这样做时间复杂度至少为 \(O(nm^2)\),无法接受。 注意到全 \(0\) 列的转移是重复的。我们可以试着只在两个相邻非
阅读全文
摘要:洛谷传送门 CF 传送门 考虑直接在题目给的 Trie 上 dp,设 \(f_u\) 为打出 \(u\) 结点的串的最小代价。 首先我们有 \(f_u \gets f_{fa_u} + 1\)。 我们有 \(f_u \gets \min\limits_v f_v + t + 1\),要求 \(u\)
阅读全文
摘要:洛谷传送门 CF 传送门 考虑一个很类似的题。我们把正数和负数分开来考虑,最后用 \(0\) 连接一些连续段,形如 \(0 - \text{正} - 0 - \text{正} - 0 - \text{负}\)。 先考虑正数。设 \(f_{i, j}\) 为考虑了 \(\ge i\) 的正数,形成了
阅读全文
摘要:洛谷传送门 AtCoder 传送门 尝试二分答案,问题变为要求恰好选 \(x\) 段 \(\ge s\),最大化选的段数。 发现我们不是很会算段数的 \(\max\),考虑给每个段 \([l, r]\) 一个长度减一即 \(r - l\) 的代价,于是变成了算代价的 \(\min\)。 设 \(f(
阅读全文
摘要:洛谷传送门 CF 传送门 考虑一条好的路径 \(x \to y\) 中一定至少存在一条边 \((u, v)\),满足这条边的序列 \(a\) 存在一个 \(j \in [1, |a| - 1]\),满足 \(a_j = u, a_{j + 1} = v\),就是说 \(a\) 包含一对相邻的 \((
阅读全文
摘要:洛谷传送门 CF 传送门 提供一个傻逼 \(O(n^2)\) 做法。 首先考虑暴力 dp,设第 \(i\) 轮后在 \(j\) 坐标上的最小花费为 \(f_{i, j}\),有: \[f_{i, j} = \min f_{i, k} + |j - k| + \begin{cases} l_i - j
阅读全文
摘要:LOJ 传送门 显然枚举物品做背包没有前途,于是我们把体积相等的物品捆绑在一起。 设 \(f_{i, j}\) 为考虑完体积 \(\in [1, i]\) 的物品,背包容量为 \(j\) 的最大值。可以贪心求出 \(g_{i, j}\) 为选 \(j\) 个体积为 \(i\) 的物品的价值最大值。
阅读全文
摘要:洛谷传送门 CF 传送门 感觉和 CF1889C2 Doremy's Drying Plan (Hard Version) 有异曲同工之妙。 显然去除每个数的平方因子后,两个数相乘为完全平方数当且仅当它们相等。 考虑若确定了分段方案,那么修改次数就是,每一段重复出现的数的个数。 那么我们设 \(f_
阅读全文
摘要:LOJ 传送门 组合计数神题。下文的 \(m\) 指原题面中的 \(d\),\(k\) 指原题面中的 \(r\)。 考虑最后每个人得到的宝石数量的序列 \(s_1, s_2, \ldots, s_n\),考虑这种方案的出现次数。首先要在 \(m\) 次操作中分别选 \(s_i - 1\) 次给第 \
阅读全文
摘要:洛谷传送门 CF 传送门 考虑若确定了所有 \(c_s\),如何计算集合最大大小。 下文令原题面中的 \(f\) 为 \(m\)。 发现我们可以类似倒推地确定。比如若 \(n = 3\),\(c_{00} = \min(c_{000}, c_{001})\),\(c_{01} = \min(c_{0
阅读全文
摘要:洛谷传送门 CF 传送门 容易转化成经典的有向图博弈模型。每张牌建一个点,若 \(x\) 能打败 \(y\) 就连一条 \(x \to y\) 的边。入度为 \(0\) 的点为必败态,之后类似拓扑排序倒推即可。 具体就是若存在边 \(u \to v\),若 \(u\) 为必败态则 \(v\) 为必胜
阅读全文
摘要:洛谷传送门 CF 传送门 看到题目感觉很怪,没有什么很好的直接做的办法。于是考虑容斥,\(\min a_i \le x + k - 1\) 的方案数减去 \(\max a_i < x\) 的方案数即为答案。 前者的方案数是好算的。注意到只要确定了 \(\min a_i\) 和差分数组 \(a_i -
阅读全文
摘要:洛谷传送门 \(k\) 染色问题。给定 \(n\) 个点 \(m\) 条边无向图,求有多少种给每个点赋点权 \(a_u \in [1, k]\) 的方案,使得 \(\forall (u, v) \in E, a_u \ne a_v\)。 Subtask \(1\):\(n \le 15\)。 考虑因
阅读全文
摘要:洛谷传送门 AtCoder 传送门 没有负环等价于每个点都存在最短路。那么就是要找到一组标号 \(a_i\),使得对于每条 \(u \to v\) 且边权为 \(d\) 的边,都有 \(a_v - a_u \le d\)。 如果我们差分 \(b_i = a_i - a_{i + 1}\),那么每个
阅读全文
摘要:洛谷传送门 考虑 dp,设 \(f_i\) 为以 \(i\) 结尾的合法子串个数。如果我们能对每个 \(i\),求出来 \(g_i\) 表示最大的左端点 \(l\) 使得 \([l, i]\) 是合法串,那么 \(f_i = f_{g_i - 1} + 1\)。若 \(g_i\) 不存在则 \(f_
阅读全文
摘要:洛谷传送门 LOJ 传送门 这题做得真艰难。 先考虑第一问。 一眼看上去并没有什么复杂度脱离值域的办法。考虑枚举一个 \(x\) 表示最小值,那么点权只能在 \([x, x + K]\) 中。 点权最小值不一定为 \(x\),减去点权在 \([x + 1, x + K]\) 中的答案即可,也就是把
阅读全文
摘要:洛谷传送门 LOJ 传送门 考虑把边按到达时间排序,然后从前往后扫并做一个 dp。 设 \(f_u\) 表示 \(1\) 到达 \(u\) 的最晚出发时间。那么对于一条边 \((u, v, a, b)\): 若 \(u = 1\),则 \(f_v = \max(f_v, x)\); 否则 \(f_v
阅读全文

浙公网安备 33010602011771号