树形DP
文章平均质量分 87
Hany01
这个作者很懒,什么都没留下…
展开
-
SRM 719 div1 Medium (树形dp)
Description一棵树有n个节点,编号为0到n − 1。你可以从一个顶点走到它的任何一个相邻顶点。 每个顶点有个可正可负的快乐度,你也有一个快乐度,这个值最开始是0。在他到达一个顶点的时候,他的快乐度将会加上该顶点的快乐度。 当然有时候你的快乐度会是负数, 这个时候他会很难受于是会宣泄情绪让快乐度重新变成 0。 如果经过了任何一个曾经经过的节点,快乐度不会变化,哪怕这个节点的快乐度为负数。 也原创 2017-11-26 21:36:27 · 303 阅读 · 0 评论 -
【BZOJ4013】【HNOI2015】实验比较(树形DP,组合)
Descriptionhttps://www.lydsy.com/JudgeOnline/problem.php?id=4013Solution先将相等的都丢进一个并查集,又因为有条件:“小 D 都最多只记住了某一张质量不比 i 差的另一张图片 Ki”,我们对大小关系进行建图后是一棵树(如果是森林,我们新建一个点连接所有根节点即可)。 设dp[u][i]dp[u][i]dp[...原创 2018-09-28 23:50:37 · 159 阅读 · 0 评论 -
【ARC101E】Ribbons on Tree(树形DP,容斥原理)
Description给定一棵点数为偶数的树,要求有多少种将点两两配对的方案使得每一条边至少被一对匹配点之间的最短路径覆盖。Solution根本想不到的DP系列。首先考虑一个容斥,设F(E)F(E)F(E)表示至少将边集EEE中的边全部拆掉所形成的联通块配对的方案数,那么答案等于∑EF(E)×(−1)|E|∑EF(E)×(−1)|E|\sum\limits_{E}F(E)\...原创 2018-09-02 20:29:39 · 734 阅读 · 0 评论 -
【HDU5293】Tree chain problem(树形DP,树状数组)
Description给定一棵树和很多条链,每条链有一个价值,要求选择一些不相交的链使得价值和最大。Solution设dp[u]dp[u]dp[u]为子树uuu内的答案,设sum[u]=∑v∈children(u)dp[v]sum[u]=∑v∈children(u)dp[v]sum[u]=\sum_{v\in children(u)}dp[v]。 考虑每条链在LCA处理。 ...原创 2018-09-04 22:07:29 · 283 阅读 · 0 评论 -
【HDU5290】Bombing Plan(树形DP)
Description给定一棵树,每个点有一个wiwiw_i,我们可以选择一些点,使得距离该点小于等于wiwiw_i的点全部炸掉。问最少选择多少点可以炸掉整棵树。Solution树形DP。 我们设fu,jfu,jf_{u,j}表示子树uuu可以向外炸掉距离至少为jjj的点的要选择的最少的点。如果jjj为负数,表示还需要向内炸掉距离为−j−j-j的点。 转移分两种情况: 1...原创 2018-09-01 19:10:24 · 262 阅读 · 0 评论 -
【ARC086E】Smuggling Marbles(虚树,树形DP)
Description给出一棵 N 个点的有根树 , 初始时其中一些点上有一个石子 , 每次同时将所有石子从所在的点移动到父亲上 , 根节点上的石子移动到篮子里 .如果有一个点上的石子数大于 1 则移除所有石子 , 树上没有石子时结束 .求所有 2 N 种初始局面经过操作后篮子里石子的总数量 .Solution我们发现每一层的点都是独立的,考虑分开处理,分别将每一层的点建成虚树...原创 2018-08-25 16:10:13 · 263 阅读 · 0 评论 -
【BZOJ4182】Shopping(点分治,树上多重背包,单调队列)
Description马上就是小苗的生日了,为了给小苗准备礼物,小葱兴冲冲地来到了商店街。商店街有n个商店,并且它们之间的道路构成了一颗树的形状。第i个商店只卖第i种物品,小苗对于这种物品的喜爱度是wi,物品的价格为ci,物品的库存是di。但是商店街有一项奇怪的规定:如果在商店u,v买了东西,并且有一个商店w在u到v的路径上,那么必须要在商店w买东西。小葱身上有m元钱,他想要尽量让小苗开心...原创 2018-08-30 16:53:24 · 387 阅读 · 0 评论 -
【BZOJ4543】【POI2014】Hotel加强版(树形DP,长链剖分)
Description有一个树形结构,每条边的长度相同,任意两个节点可以相互到达。选3个点。两两距离相等。有多少种方案? n≤105n≤105\mathbf{n\le 10^5}Solutionn≤5×103n≤5×103n\le 5\times 10 ^ 3范围的O(n2)O(n2)O(n^2)题解戳这里: https://blog.csdn.net/hhaannyyii...原创 2018-08-17 20:50:27 · 266 阅读 · 0 评论 -
【BZOJ3522】【POI2014】Hotel(树形DP)
Description有一个树形结构,每条边的长度相同,任意两个节点可以相互到达。选3个点。两两距离相等。有多少种方案?Solution考虑树形DP: 设f[u][k]f[u][k]f[u][k]表示uuu的子树中距离uuu为kkk的点的个数, g[u][k]g[u][k]g[u][k]表示uuu的子树中到LCA距离为ddd,uuu到LCA距离为d−kd−kd-k的点对的数...原创 2018-08-17 20:43:38 · 261 阅读 · 0 评论 -
【LOJ2587】【APIO2018】铁人两项(圆方树,树形DP)
Descriptionhttps://loj.ac/problem/2587Solution发现其实题目要求的就是对于每一条路径(u,v)(u,v)(u,v)所有可能经过的点数的和。我们建出圆方树,令方点的权值为所在点双(一条边也看作点双)的大小,圆点权值为−1−1-1,那么路径(u,v)(u,v)(u,v)可能经过的点的个数就是圆方树上两点间路径的权值和。我们要计算对...原创 2018-07-31 19:35:32 · 276 阅读 · 0 评论 -
【HDU4035】Maze 妹子(期望,树上高消)
Description有n个房间,由n-1条隧道连通起来,实际上就形成了一棵树,从结点1出发,开始走,在每个结点i都有3种可能: 1.被杀死,回到结点1处(概率为ki) 2.找到出口,走出迷宫 (概率为ei) 3.和该点相连有m条边,随机走一条 求:走出迷宫所要走的边数的期望值。 n≤10000n≤10000n\le 10000Solution这题其实是个套路。考...原创 2018-06-09 20:38:09 · 413 阅读 · 0 评论 -
【BZOJ4455】【UOJ185】【ZJOI2016】小星星(树形DP,容斥原理)
Descriptionhttp://uoj.ac/problem/185Solution单考虑下面Code中的那个dp函数,设fi,jfi,jf_{i,j}表示iii映射到jjj的iii的子树中的答案,直接O(n3)O(n3)O(n^3)转移即可。 但是这样是错的,因为有可能很多个点映射到同一个点。 所以可以容斥一下,枚举最多映射哪些点,乘上容斥系数就行了。这题的容斥系数就...原创 2018-06-06 21:08:07 · 284 阅读 · 0 评论 -
【BZOJ5290】【HNOI2018】道路(树形DP+滑稽卡空间)
Descriptionclick meSolution我考场上居然傻逼到这种题都没写出来。。还是太菜了。。。考虑树形DP,设dpu,i,jdpu,i,jdp_{u,i,j}表示节点uuu到根的路径上有iii条公路、jjj条铁路,转移非常显然,如果不知道就看代码吧。 先在洛谷上A掉了,然后在BZOJ上愉快地发现MLE了。 我懒(kan)得(bu)看(dong)网上的大佬是...原创 2018-04-18 17:55:21 · 194 阅读 · 0 评论 -
【BZOJ2427】【HAOI2010】软件安装(树形依赖背包,缩点)
Description现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi。我们希望从中选择一些软件安装到一台磁盘容量为M计算机上,使得这些软件的价值尽可能大(即Vi的和最大)。但是现在有个问题:软件之间存在依赖关系,即软件i只有在安装了软件j(包括软件j的直接或间接依赖)的情况下才能正确工作(软件i依赖软件j)。幸运的是,一个软件最多依赖另外一个软件。如果一个...原创 2018-04-10 19:13:20 · 194 阅读 · 0 评论 -
【BZOJ3611】【HEOI2014】大工程(虚树,树形DP)
Description国家有一个大工程,要给一个非常大的交通网络里建一些新的通道。 我们这个国家位置非常特殊,可以看成是一个单位边权的树,城市位于顶点上。 在 2 个国家 a,b 之间建一条新通道需要的代价为树上 a,b 的最短路径。 现在国家有很多个计划,每个计划都是这样,我们选中了 k 个点,然后在它们两两之间 新建 C(k,2)条 新通道。 现在对于每个计划,我们想知道: ...原创 2018-04-02 21:57:00 · 169 阅读 · 0 评论 -
【BZOJ2159】Crash的文明世界(树形DP,斯特林数的性质)
Description给定一棵nnn个节点的树和定值kkk,求每个点的S(u)S(u)S(u),S(u)S(u)S(u)的定义如下: S(u)=∑v∈treedist(u,v)kS(u)=∑v∈treedist(u,v)kS(u)=\sum_{v\in tree} dist(u, v)^kSolution感觉很巧妙的一个题,好评(除了输入要解压外)先推一波式子: S(u)=∑i...原创 2018-02-19 17:54:47 · 431 阅读 · 0 评论 -
【BZOJ3566】【SHOI2014】概率充电器(树形期望DP)
Descriptionclick meSolution参考博客 直接求每个点充电的概率显然不太方便(其实还是很方便的,只是我太菜了。。),所以我们考虑求每个点不能充电的概率,这包括三个方面: 1. 节点的儿子没有传电(儿子没有电或者边不连通) 2. 自己没有电 3. 父亲没有传电(父亲没有电或者边不连通) 我们用fufuf_u表示该节点没有点且儿子没有传电的概率,那么有:...原创 2018-02-08 08:41:19 · 263 阅读 · 0 评论 -
【清橙A1212】剪枝(树形DP)
Descriptionhttp://www.tsinsen.com/A1212Solution对于每一个叶子节点,它到根的路径上存在且仅存在一个点作为最终答案中的叶子节点。 我们从左向右考虑每一条路径,设dp[u]dp[u]dp[u]表示将路径上的uuu的下面剪掉获得的最大价值。 我们从左向右转移,对于相邻的两个叶子节点,我们只需考虑它们LCA以下的节点。 如果我们对于右...原创 2018-09-28 23:50:44 · 254 阅读 · 0 评论