![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
点分治
笑面蘑菇
这个作者很懒,什么都没留下…
展开
-
tree --- 点分治
传送门:洛谷4178 题目描述 给你一棵TREE,以及这棵树上边的距离.问有多少对点它们两者间的距离小于等于K 分析 点分治的经典例题 假设当前根节点为p,对于满足条件的路径,无非有两种:经过p和不经过p.这也是分治的依据.那么,要计算路径数的话,只需要计算经过点p的路径数(存在线性算法),不经过的递归处理即可 具体流程: 1. 找出树的重心作为当...原创 2018-07-26 15:28:05 · 179 阅读 · 0 评论 -
【模板】点分治1
传送门:洛谷P3806 题目描述 给定一棵有n个点的树 询问树上距离为k的点对是否存在。 分析 瞥了几眼数据,貌似可以开数组的样子,于是,,,,,,, 不想多想了,直接参考tree的做法.calc时,直接两重循环枚举能够得到的距离,用桶当计数器即可 代码 #include <cstdio> #include <cstdlib> #...原创 2018-07-26 22:11:13 · 147 阅读 · 0 评论 -
聪聪可可 --- 点分治
传送门:洛谷P2634 题目描述 聪聪和可可是兄弟俩,他们俩经常为了一些琐事打起来,例如家中只剩下最后一根冰棍而两人都想吃、两个人都想玩儿电脑(可是他们家只有一台电脑)……遇到这种问题,一般情况下石头剪刀布就好了,可是他们已经玩儿腻了这种低智商的游戏。 他们的爸爸快被他们的争吵烦死了,所以他发明了一个新游戏:由爸爸在纸上画n个“点”,并用n-1条“边”把这n个“点”恰好连通(其实这就是一...原创 2018-07-27 10:45:45 · 149 阅读 · 0 评论 -
[IOI2011]Race ---- 点分治
传送门:洛谷P4149 题目描述 给一棵树,每条边有权。求一条简单路径,权值和等于 KK ,且边的数量最小。 分析 模板基本一致,主要讲讲calc: calc有两种模式,这里用的是子树间的逐个处理(保证都进过根节点). 由于要求边数量最小,在加上k值的范围不算太大,因此我们可以直接用数组tot[x]记录距根节点距离为x的最短边数. PS:总共要访问子树...原创 2018-07-27 22:00:56 · 343 阅读 · 0 评论