![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
树形DP
文章平均质量分 55
在树结构上进行dp
wind__whisper
qwq
展开
-
P6773 [NOI2020] 命运(dp、线段树合并)
dp、线段树合并原创 2022-06-30 11:07:42 · 270 阅读 · 0 评论 -
P5801 [SEERC2019]Game on a Tree(博弈论)
博弈论原创 2022-05-16 08:58:03 · 182 阅读 · 0 评论 -
CF1060F Shrinking Tree(期望、树形dp)
期望原创 2022-05-02 15:44:32 · 314 阅读 · 0 评论 -
AT4352 [ARC101C] Ribbons on Tree
容斥原创 2022-04-28 16:26:56 · 149 阅读 · 0 评论 -
AT2293 [AGC009D] Uninity(贪心、状压)
贪心原创 2022-04-20 21:16:32 · 189 阅读 · 0 评论 -
CF1580B Mathematics Curriculum(笛卡尔树、树形dp)
巧妙的转化原创 2022-03-21 22:00:32 · 393 阅读 · 0 评论 -
P3748 [六省联考 2017] 摧毁“树状图”(树形dp)
树形dp原创 2022-03-21 17:18:55 · 225 阅读 · 0 评论 -
P4383 [八省联考 2018] 林克卡特树(wqs二分、树形dp)
小清新wqs二分+树形dp原创 2022-03-18 22:23:25 · 554 阅读 · 0 评论 -
CF1338D:Nested Rubber Bands(树形dp)
解析神仙题关键在于找到一个满足题意的充要条件结论:所有的合法答案一定是由树上一条链及其相邻的点组成的独立集充分性比较显然,这个东西随便画画就可以构造出合法的解来所以我们只要考虑必要性考虑不满足这个结论的方案可以“发现”它一定是无解的为什么?懒得写了这篇博客已经“发现”的很明白了转化完题意后的dp就比较简单了代码#include<bits/stdc++.h>using namespace std;#define ll long longconst int N=5e5原创 2021-11-08 01:01:20 · 118 阅读 · 0 评论 -
洛谷P3349:小星星(容斥dp)
解析先安利一波洛谷上我介绍如何用暴力日过去的博客现在开始务正业考虑把dp记录状态的一维s去掉这样单次转移复杂度变成n3n^3n3但是这样显然会算多啊!因为一个编号可能会用很多次考虑容斥设ansians_iansi表示至少浪费了i个编号的答案那么我们的答案显然就是ans0−ans1+ans2...ans_0-ans_1+ans_2...ans0−ans1+ans2...就是一个经典的利用容斥至少转恰好的方法至于ans的计算,可以暴力枚举二进制的集合s,每次进行一次n3n^3n3原创 2021-10-27 20:51:40 · 90 阅读 · 0 评论 -
CF1016F:Road Projects(树形dp)
解析好题意思就是我没做出来稍微分析一下就可以发现加边的位置始终是一样的换句话说询问完全可以O1关键就是找到这条边加在哪里一开始我完全把这道题看成了彻头彻尾的数据结构题容易想到二分答案然后上个树状树组搞一搞就行了但是遇到一个关键的问题它无法解决加边必须是非树边的问题于是又搞巴搞巴整了个线段树并且把离散化的去重干掉,开始乱搞然后就T了…本来线段树常数就大我的那个东西暴力修改还自带好几倍常数…俩log根本过不去3e5无奈之下看了题解真的很巧妙复杂度和实现难度双重碾压我qwq把1原创 2021-10-26 17:02:17 · 133 阅读 · 0 评论 -
CF1146F: Leaf Partition(树形dp)
解析阴间dp题qwq不难设计dp:dpx,0:x节点没有被包含、子树内的方案数dp_{x,0}:x节点没有被包含、子树内的方案数dpx,0:x节点没有被包含、子树内的方案数dpx,1:x节点被包含、子树内的方案数dp_{x,1}:x节点被包含、子树内的方案数dpx,1:x节点被包含、子树内的方案数考虑转移:dp[x][0]就是儿子的所有方案数(dp[son][0]+dp[son][1])的累乘dp[x][1]比较麻烦。首先需要乘上当前儿子的方案数,然后还要考虑x节点和当前儿子合并成一个原创 2021-10-26 12:37:57 · 123 阅读 · 0 评论 -
警卫站岗(树上dp)
题目描述五一来临,某地下超市为了便于疏通和指挥密集的人员和车辆,以免造成超市内的混乱和拥挤,准备临时从外单位调用部分保安来维持交通秩序。已知整个地下超市的所有通道呈一棵树的形状;某些通道之间可以互相望见。总经理要求所有通道的每个端点(树的顶点)都要有人全天候看守,在不同的通道端点安排保安所需的费用不同。一个保安一旦站在某个通道的其中一个端点,那么他除了能看守住他所站的那个端点,也能看到这个通道的另一个端点,所以一个保安可能同时能看守住多个端点(树的结点),因此没有必要在每个通道的端点都安排保安。任务原创 2021-05-02 12:50:39 · 100 阅读 · 0 评论 -
洛谷P4322 最佳团伙(树上dp)
题目描述洛谷传送门题目描述JSOI 信息学代表队一共有 N 名候选人,这些候选人从 1 到 N 编号。方便起见,JYY 的编号是 0 号。每个候选人都由一位编号比他小的候选人Ri推荐。如果 Ri=0,则说明这个候选人是 JYY 自己看上的。为了保证团队的和谐,JYY 需要保证,如果招募了候选人 iii,那么候选人 Ri 也一定需要在团队中。当然了,JYY 自己总是在团队里的。每一个候选人都有一个战斗值 Pi,也有一个招募费用 Si 。JYY 希望招募 K 个候选人(JYY 自己不算),组成一个性价原创 2021-05-02 14:55:15 · 137 阅读 · 0 评论 -
路径求和(ybtoj-树形dp)
题目描述给出一棵带边权的树,求所有至少有一个端点为叶节点的所有简单路径的长度和解析换一个角度想考虑将树分割为AB两部分的一条边会存在于多少条符合条件的路径中(也就是边权会考虑多少次)不难发现,这个次数就是A的叶节点个数与B节点数的乘积,加上B的叶节点个数与A节点数的乘积这样本题就迎刃而解了这题提供了一种换角度看问题的思路不考虑有多少条路径,而是看每条边记录的次数类似于逆向思维2021省选:《滚榜》用类似的逆向想法能很轻易的写出60分的暴力这是一个很值得学习的思路...原创 2021-05-22 18:31:59 · 305 阅读 · 0 评论