树形DP
文章平均质量分 54
wwt9b15bs
这个作者很懒,什么都没留下…
展开
-
【题解】poj2342 树形DP
题目链接 思路:用dp数据来记录价值,开数组用下标记录去或者不去、 则状态转移方程为: DP[i][1] += DP[j][0], DP[i][0] += max{DP[j][0],DP[j][1]};其中j为i的孩子节点。 这样,从根节点r进行dfs,最后结果为max{DP[r][0],DP[r][1]}。#include<cstdio>#include<cst...原创 2018-08-17 07:22:55 · 176 阅读 · 0 评论 -
【题解】poj3585 Accumulation Degree 二次扫描与换根法
题目链接DescriptionTrees are an important component of the natural landscape because of their prevention of erosion and the provision of a specific ather-sheltered ecosystem in and under their foliage. ...原创 2018-09-28 15:30:23 · 316 阅读 · 0 评论 -
【题解】CH5402 选课 背包类树形DP
题目链接描述学校实行学分制。每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分。学校开设了 N(N≤300) 门的选修课程,每个学生可选课程的数量 M 是给定的。学生选修了这 M 门课并考核通过就能获得相应的学分。在选修课程中,有些课程可以直接选修,有些课程需要一定的基础知识,必须在选了其他的一些课程的基础上才能选修。例如《Windows程序设计》必须在选修了《Windows操作基...原创 2018-09-28 10:25:14 · 245 阅读 · 0 评论 -
【题解】CH5401 没有上司的舞会 树形DP
题目链接描述Ural大学有 NNN 名职员,编号为 1∼N1\sim N1∼N。他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司。每个职员有一个快乐指数,用整数 HiH_iHi 给出,其中 1≤i≤N1≤i≤N1≤i≤N。现在要召开一场周年庆宴会,不过,没有职员愿意和直接上司一起参会。在满足这个条件的前提下,主办方希望邀请一部分职员参会,使得所有参会职员的快乐指数总和最大,求这个...原创 2018-09-28 09:51:53 · 336 阅读 · 0 评论 -
【题解】洛谷P4516(bzoj5314)[JSOI2018]潜入行动 树形DP+计数类DP
题目链接设 dp[u][iu][xu][yu]dp[u][iu][xu][yu]dp[u][iu][xu][yu] 表示在 uuu 的子树内选择了 iuiuiu 个节点,其中节点 uuu 有/无被安装 (xu=0/1)(xu=0/1)(xu=0/1),节点 uuu 有无被控制 (yu=0/1)(yu=0/1)(yu=0/1) 的方案数。#include<cstdio>#in...原创 2018-10-03 08:08:18 · 308 阅读 · 0 评论 -
【题解】hdu3586 树形DP+二分
题目链接#include&lt;cstdio&gt;#include&lt;vector&gt;#include&lt;algorithm&gt;#include&lt;cstring&gt;using namespace std;const int INF=1100000;int n,m;const int N=1e3+10;struct node{原创 2018-08-17 07:23:28 · 258 阅读 · 0 评论 -
【题解】hdu4003 树形DP
题目链接 dp[i][j]表示以i为根的子树放j个机器人所产生的最小权值和,dp[i][0]表示放了一个机器人遍历i的子树然后返回i所产生的权值和。采用邻接表#include&lt;cstdio&gt;#include&lt;algorithm&gt;#include&lt;cstring&gt;using namespace std;const int N=1e5+10;#def...原创 2018-08-17 07:23:24 · 261 阅读 · 0 评论 -
【题解】poj1947 树形DP
题目链接 dp[root][j]:以root为根节点的子树,得到 j 个节点的子树需要最少减掉的边数,注意子树中必须保留root节点。否则无法dp 那么很明显的边界条件dp[root][1] = num(儿子的个数),因为要只剩一个节点的子树,那么所有的孩子都减掉,这样就为儿子的个数。 那么状态转移方程呢 dp[root][i] = min(dp[root][i-k]+dp[chil...原创 2018-08-17 07:23:19 · 206 阅读 · 0 评论 -
【题解】poj1155 树形DP
题目链接 题意:一个树形网络,编号为1的是广播站,叶子节点为广播接收者,要想使用必须付出费用,中间的其他点是中继站,信号到达每个中继站都会有一定的消费;问在保证广播站收益 不亏本的情况下使用者最多是多少? 分析:dp[i][j]表示第i个点下面有j个使用用户的收益;状态转移方程: ...原创 2018-08-17 07:23:14 · 255 阅读 · 0 评论 -
【题解】hdu2196 树形DP
题目链接 分析:求一个树中所有节点能到达的最远距离f[i]。要用两个dfs。 首先第一个dfs求出所有每个节点i在其子树中的正向最大距离和正向次大距离和dist[i][0]和dist[i][1](如果i节点在子树中最大距离经过了2号儿子,那么次大距离就是不经过2号儿子的最大距离)。并且还要标记longest[i]=j表示节点i在其子树中的最大距离经过了节点j(即j是i的一个儿子)。 由上步我...原创 2018-08-17 07:23:03 · 285 阅读 · 0 评论 -
【题解】sdoj3743[2018.8.10集训]C.连通能力 树的直径+树形DP
题目链接#include<bits/stdc++.h>using namespace std;const int N=1e6+100;inline int Read(){ int x=0,f=0;char ch=getchar(); while(ch<'0'||ch>'9')f|=ch=='-',ch=getchar(); while(ch>=...原创 2018-11-07 18:07:15 · 208 阅读 · 0 评论