随笔分类 -  动态规划-树形DP

摘要:【题目链接】 http://acm.hdu.edu.cn/showproblem.php?pid=5909 【题目大意】 给出一棵树,其每棵连通子树的价值为其点权的xor和, 问有多少连通子树的价值为1~m 【题解】 首先定1为根,转有根树,我们在树的每个节点保存一个权值数组, 表示与其连通的子树的 阅读全文
posted @ 2017-08-16 14:51 forever97 阅读(275) 评论(0) 推荐(0)
摘要:【题目链接】 http://acm.hdu.edu.cn/showproblem.php?pid=6035 【题目大意】 给出一颗树,一条路径的价值为其上点权的种类数,求路径总价值 【题解】 单独考虑每一种颜色,答案就是对于每种颜色至少经过一次这种的路径条数之和。 反过来思考只需要求有多少条路径没有 阅读全文
posted @ 2017-07-26 13:33 forever97 阅读(834) 评论(0) 推荐(1)
摘要:【题目链接】 http://acm.hdu.edu.cn/showproblem.php?pid=6035 【题目大意】 给出一颗树,一条路径的价值为其上点权的种类数,求路径总价值 【题解】 我们计算单个颜色的贡献,那么就是经过该颜色至少一次的路径数量, 我们统计的时候在每个点记录以其为开始的路径的 阅读全文
posted @ 2017-07-26 10:22 forever97 阅读(335) 评论(0) 推荐(0)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2286 【题目大意】 出一棵边权树,每次给出一些关键点,求最小边割集, 使得1点与各个关键点不相连 【题解】 我们将所有关键点抽出构建虚树,记录每个点到根的最小边权, 在虚树上标记关键点, 阅读全文
posted @ 2017-07-20 13:31 forever97 阅读(171) 评论(3) 推荐(0)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4027 【题目大意】 樱花树由n个树枝分叉点组成,编号从0到n-1,这n个分叉点由n-1个树枝连接, 我们可以把它看成一个有根树结构,其中0号节点是根节点。 这个树的每个节点上都会有一些樱 阅读全文
posted @ 2017-07-13 14:22 forever97 阅读(428) 评论(0) 推荐(0)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1040 【题目大意】 给出环套外向树森林,求最大权独立集。 【题解】 我们对于每个连通块,找到环上的一条边拆开,对于边的两端分别做树形DP, 假设两端点位x和y,那么不包含x的dp值涵盖了 阅读全文
posted @ 2017-07-13 13:56 forever97 阅读(198) 评论(0) 推荐(0)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2809 【题目大意】 给出一棵树,求出每个点有个权值,和一个乘算值,请选取一棵子树, 并在这个子树上选择一些节点,使得根节点的乘算值乘上选取的节点数价值最大, 并且权值和不超过给定的限制 阅读全文
posted @ 2017-07-12 14:19 forever97 阅读(220) 评论(0) 推荐(0)
摘要:【题目链接】 http://codeforces.com/contest/804/problem/D 【题目大意】 给你一个森林,每次询问给出u,v, 从u所在连通块中随机选出一个点与v所在连通块中随机选出一个点相连, 问你此时相连出的树的直径期望是多少?(如果本身就在同一个连通块内,则输出-1) 阅读全文
posted @ 2017-05-07 22:44 forever97 阅读(484) 评论(0) 推荐(2)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1827 【题目大意】 给出一棵有点权和边权的树, 请确定一个点,使得每个点到这个点的距离乘上该点乘积的总和最小。 【题解】 定1为根,我们先计算当这个点为1的时候的值,同时记录每个子树的s 阅读全文
posted @ 2017-05-07 01:02 forever97 阅读(205) 评论(0) 推荐(0)
摘要:【题目链接】 http://acm.hzau.edu.cn/problem.php?id=1201 【题目大意】 给出一棵树,问每个节点距离六个点以内的点有几个 【题解】 定根维护树形DP,Dw[x][i]数组表示从上往下到达的距离为i的点的个数, 有Dw[x][i]=sum(Dw[son][i-1 阅读全文
posted @ 2017-04-23 20:43 forever97 阅读(357) 评论(0) 推荐(0)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=3391 【题目大意】 给定一棵树,求分支size均不大于一半点数的点 【题解】 递归的同时计算各个分支size,如果出现大于一半点数的则给这个点打上标记 最后输出没有标记的点即可。 【代码 阅读全文
posted @ 2017-04-17 22:30 forever97 阅读(257) 评论(0) 推荐(0)
摘要:【题目链接】 http://www.lydsy.com/JudgeOnline/problem.php?id=1131 【题目大意】 给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 【题解】 我们记dp[i]为所有点到i的深度之和,我们发现对于定根树, dp[x]=dp[ 阅读全文
posted @ 2017-04-16 21:02 forever97 阅读(177) 评论(0) 推荐(0)
摘要:【题目链接】 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3949 【题目大意】 给出一棵根为1的树,每条边边长为1,请你从根连一条边到某个点, 使得各点到根距离的总和最小,求这个最小距离和 【题解】 假设从1连到x,那么 阅读全文
posted @ 2017-04-11 00:24 forever97 阅读(867) 评论(0) 推荐(2)
摘要:【题目链接】 http://codeforces.com/problemset/problem/700/B 【题目大意】 给出 一棵n个节点的树, 现在在这棵树上选取2*k个点,两两配对,使得其配对的两点间距离的和最大。 【题解】 求出树的加权重心,那么答案就是每个点到加权重心的距离之和,但是实际上 阅读全文
posted @ 2016-11-16 23:24 forever97 阅读(396) 评论(0) 推荐(0)
摘要:【题目链接】 http://acm.hdu.edu.cn/showproblem.php?pid=5758 【题目大意】 给出一棵树,每条路长度为1,允许从一个节点传送到任意一个节点,现在要求在传送次数尽量少的情况下至少经过每条路一遍啊,同时最小化走过的路程总长度。输出路程总长度。 【题解】 首先, 阅读全文
posted @ 2016-11-16 23:23 forever97 阅读(310) 评论(0) 推荐(0)
摘要:【题目链接】 http://codeforces.com/problemset/problem/123/E 【题目大意】 给出一棵,给出从每个点出发的概率和以每个点为终点的概率,求出每次按照dfs序从起点到达终点的期望。 【题解】 首先对于期望计算有X(x,y)=X(x)*X(y),所以对于每次df 阅读全文
posted @ 2016-11-16 23:20 forever97 阅读(536) 评论(0) 推荐(0)