摘要: 题意:有一棵带权树每个节点上住着一个人。人后需要让所有人交换房子,但是每个结点只住一个人。问你所有人最长走多少路。思路:这里有一个贪心就是每条边的权值乘以两边结点少的那一边的两倍。然后就是dfs求出每个结点子树上有多少点这样n-dp[v]就是另一边的点了。注意longlong和手动加栈。代码如下: 1 /************************************************** 2 * Author : xiaohao Z 3 * Blog : http://www.cnblogs.com/shu-xiaohao/ 4 * Last modifi... 阅读全文
posted @ 2014-03-23 23:22 张小豪 阅读(250) 评论(0) 推荐(0) 编辑