码迷,mamicode.com
首页 > 其他好文 > 详细

点分治入门

时间:2018-12-14 00:59:58      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:部分   修改   poj1741   方法   数组   poj   应该   简单的   --   

引入

考虑比树链剖分稍微简单的情况,统计树上具有某种特殊性质的路径,而不发生修改。(这部分按道理来讲应该接在线段树/树状数组/分块之类的后面学才对啊)

一般来讲这些树都是无根树。

对于一条链,可以取中间的一个点,把它划分为两个部分(分别属于这个点的两课不同子树)。之后可以利用分治的方法对于每一棵树都做这样的分解,最后把所有子树上满足题意的路径都统计到,就能够得到答案了。但是在统计的过程中两个节点有可能属于同一棵子树,便可能出现错误,所以还要统计在同一棵子树上的情况,并把它们去掉。

例题

似乎用一道具体的题目会清楚一些?

poj1741 Tree 求一棵树上长度不超过k的路径有多少条。

利用刚才说的方法,把这棵树划分成多个子树

---待更新

点分治入门

标签:部分   修改   poj1741   方法   数组   poj   应该   简单的   --   

原文地址:https://www.cnblogs.com/waxwing/p/10117192.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!