随笔分类 -  动态规划/dp / 树上 dp

摘要:P6773 NOI2020 命运 数据结构上做 dp,少见但好用。 思路 首先我们用 dp 来解决这个问题。由于与祖先有关,我们不妨把一个节点的子问题限定在子树内,考虑所有从子树内连向子树外的集合 Q。 设 f[u][i]u 的集合 Q 未被覆盖的祖先深度最 阅读全文
posted @ 2025-02-17 15:34 彬彬冰激凌 阅读(4) 评论(0) 推荐(2) 编辑
摘要:几何 比赛时候唐了,连状态都没想到。 记录一下 dp 的惯用优化方法。 思路 (此处串 x,y0 开始,串 s1 开始) 设 dp[i][j][k] 为第 i 位时,将 s[1,i] 分为,串 x 重复若干次加上串 \(x[ 阅读全文
posted @ 2024-09-25 16:57 彬彬冰激凌 阅读(16) 评论(0) 推荐(2) 编辑
摘要:P3523 POI2011 DYN-Dynamite 小 trick,加双倍经验。 思路 使 dis 的最大值最小,可以想到二分 dis,然后根据 dis 判断可行性。 那么可以把问题转化为,所有关键点到选择的点的距离小于 dis 的前提下,使得使用的点的个数最小。 阅读全文
posted @ 2024-07-07 12:58 彬彬冰激凌 阅读(4) 评论(0) 推荐(0) 编辑
摘要:P4253 SCOI2015 小凸玩密室 一道紫色的 dp。 思路 首先读题: 要保证任意时刻所有被点亮的灯泡必须连通 在点亮一个灯泡后必须先点亮其子树所有灯泡才能点亮其他灯泡 考虑设 g[u][1]u 子树第一个被选中的是子树的根的代价,g[u][0]u 阅读全文
posted @ 2024-06-21 13:59 彬彬冰激凌 阅读(11) 评论(0) 推荐(0) 编辑
摘要:P3267 JLOI2016/SHOI2016 侦察守卫P3267 JLOI2016/SHOI2016 侦察守卫 互相赋值的双 dp 思路 设 f[u][i] 表示包括 u 子树内所有关键点都被覆盖(包括 u),且至少还可以向 u 的父亲方向覆盖 i 层的最小代价。 设 g[u][i] 表示向下距离大于等于 阅读全文
posted @ 2024-06-11 13:49 彬彬冰激凌 阅读(9) 评论(0) 推荐(0) 编辑
摘要:P4629 SHOI2015 聚变反应炉 树上背包+树形dp。 算是套娃题吗? 思路 看到数据考虑数据分治。 part1 贪心 ci1 对于这种情况,我们考虑贪心的点亮。 手玩几组数据,发现只要先全部点亮 ci=1 的点,都可以得到最优解。 若存在一个 \(c_i=1\ 阅读全文
posted @ 2024-06-07 13:44 彬彬冰激凌 阅读(4) 评论(0) 推荐(0) 编辑
摘要:P7563 JOISC 2021 Day4 最悪の記者 4 (Worst Reporter 4) 线段树合并好题,通过线段树合并特别的方式优化了树形 dp。 思路 根据图中的不等关系连边建图,不难发现最后的图将会是基环树森林和普通的树的森林,我们先考虑对于一棵树要怎么办。 将 hi 离散化 阅读全文
posted @ 2024-01-24 21:41 彬彬冰激凌 阅读(28) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示