您的位置:首页 > 其它

poj 3140 Contestants Division(树形dp? dfs计数+枚举)

2013-08-31 23:53 363 查看
本文出自 http://blog.csdn.net/shuangde800

--------------------------------------------------------------------------------------

题目链接: poj-3140

题目

给n个节点的带权树,删掉其中一边,就会变成两颗子树,
求删去某条边使得这这两颗子树的权值之差的绝对值最小。

思路

直接dfs一次,计算所有子树的权值总和tot[i]
如果删掉一条边(v, fa),fa是v的父亲节点,
那么v子树权值总和为tot[v],显然另一棵子树的权值总和就是sum-tot[v],
最总取最小绝对值即可。
这题要注意用long long

其实就是dfs+枚举,想不通为什么有人会把这题列为树形dp?

代码

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: