您的位置:首页 > 其它

[树的点分治] [树形DP] [BZOJ2599] [IOI2011] Race

2017-06-10 22:36 246 查看
题目传送门

这题相对POJ2114改了个询问……询问的是等于k的最少边数……

考虑树形dp……dpi表示权值为i的路径所用最少边数。

点分治照常,找到重心分成若干子树,可以统计子树内的点到根的距离和权值。就可以dp了!

dpi=min{dpi−disx+depx}

然后就可以统计答案了……

然后再用子树内的点到根的距离更新一遍dpdisx,这是树分治的情况3。

统计完一个子树的答案,将信息清空,然后递归点分治过程……

时间复杂度我猜是O(nlog2n)。

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