树的直径
Self-Discipline
在校大学生
展开
-
HDU 6233
题意:一个树上有m个人,每个人在某个节点上,每个时刻每个人可以和一个与他距离大于 1 的点进行交流,然后往交流的人的方向走一步,当他一个人没有可以交流的人时就不可以走了,问所有人都不走的期望时间是多少。题解:这题分析下就知道是求某一对最远的距离,也就是树的直径,由于点数很少暴力也行代码参考:https://www.cnblogs.com/scaulok/p/9715746.html...原创 2019-05-22 12:17:27 · 246 阅读 · 0 评论 -
HDU 5886
题目:N个点的一棵带权树。切掉某条边的价值为切后两树直径中的最大值。求各个边切掉后的价值和(共N-1项)。思路:预处理出最长链,若断边不在最长链上,那么答案依旧是最长链,否则分别计算断开后的最长链,取最大值。参考:https://www.cnblogs.com/zufezzt/p/5892342.html,https://blog.csdn.net/hao_zong_yin/article...原创 2019-05-17 21:58:17 · 486 阅读 · 0 评论 -
HDU 2196 Computer(树形dp+换根法+树的直径)
题意:给出一棵树,求离每个节点最远的点的距离分析:方法一:贪心做法,不会证明,找到直径的两个端点,分别dfs一下,求出两端到每个点分别的距离取最大值,树的直径作用很大啊。方法二:把无根树转化成有根树分析,对于每个节点,维护所有以当前节点为根的子树中距当前节点最远的距离和次远距离,二次扫描(两遍dfs)。参考:https://blog.csdn.net/shuangde800/art...原创 2019-07-20 14:16:41 · 547 阅读 · 0 评论