摘要: 题意:切掉树上的某条边,使分开的两棵树上各点的权值和差值最小。 与hdu2196不同的是,此题是点权,其他无太大差别,注意数据范围。 先求出每个节点的子树权值和,然后自底向上dp即可。取$\min (abs(sum - 2*dp[u]))$ 阅读全文
posted @ 2017-08-23 21:33 Elpsywk 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 题意:求树的重心(删除该点后子树最大的最小) 解题关键:想树的结构,删去某个点后只剩下它的子树和原树-此树所形成的数,然后第一次dp求每个子树的节点个数,第二次dp求解答案即可。 此题一开始一直T,后来加了输入挂才过,第一次见卡cin+关同步的题目。 用scanf试了一下,也可以过,0.5s,看来c 阅读全文
posted @ 2017-08-23 18:08 Elpsywk 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题意:求树中距离每个节点的最大距离。 解题关键:两次dfs,第一次从下向上dp求出每个节点子树中距离其的最大距离和不在经过最大距离上的子节点上的次大距离(后序遍历),第二次从上而下dp求出其从父节点过来的最大距离(先序遍历). 如果vi不是u最长距离经过的节点,$d[{v_i}][2] = dist 阅读全文
posted @ 2017-08-23 16:26 Elpsywk 阅读(162) 评论(0) 推荐(0) 编辑