题解: 首先考虑点分治 dis(i,u)+dis(i,v)<=value[u]+value[v] 移项就很容易发现用平衡树可以很简单的维护这个东西 但是有重复,需要在下一层的每个平衡树内减去这个答案 这个时候时间复杂度是nlog^2 现在需要动态加点 假设加这个点不会破坏点分树结构我们就暴力加点 经 ...
分类:
其他好文 时间:
2018-08-06 11:42:46
阅读次数:
116
前言 YCB现在很弱(TAT) 暑假有一个月,赶快狂补一下。 大概的计划如下: 首先前期会以数据结构为主,毕竟代码能力太弱,涉及内容: 线段树分治、二进制分组、KD Tree 。 等数据结构做到没有智商的时候加入一波数论,内容为 杜教筛、min_25筛 。 然后中途小清新一下,做一些 组合博弈与构造 ...
分类:
其他好文 时间:
2018-08-01 19:41:38
阅读次数:
412
简单题 bzoj-4066 题目大意:n*n的棋盘,开始为均为0,支持:单点加权值,查询矩阵权值和,强制在线。 注释:$1\le n\le 5\cdot 10^5$,$1\le m \le 2\cdot 10^5$。 想法:KD-Tree裸题。 所谓KD-Tree,就是一个看起来贼牛逼实际上我觉着也 ...
分类:
其他好文 时间:
2018-07-28 23:23:55
阅读次数:
204
题解: kd-tree裸题 对每个点维护最近的k个开个堆维护一下 ...
分类:
其他好文 时间:
2018-07-10 23:41:33
阅读次数:
162
KD-Tree 写在KD-Tree讲解之前,请先让我评论一番,“这什么垃圾算法!这也太垃圾了!”BY fcwww&Winniechen BY GXZlegend KD-Tree,时间复杂度可证的可以被可持久化线段树替代,时间复杂度不可证的...时间复杂度不可证时间复杂度就是能被卡成n^2 但是,就算 ...
分类:
其他好文 时间:
2018-07-06 20:22:01
阅读次数:
169
/* 考虑暴力 可以n ^ 2枚举点对 然后用一个容量为2k的小根堆来维护第k大 kd-tree呢就是来将这个暴力优化, 每次先找远的并且最远距离不如堆顶的话就不继续找下去 貌似挺难构造数据卡的 */ #include #include #include #include #include #inc... ...
分类:
其他好文 时间:
2018-06-30 16:13:59
阅读次数:
349
https://www.lydsy.com/JudgeOnline/problem.php?id=2648 存个kd-tree板子 ...
分类:
其他好文 时间:
2018-06-16 20:32:27
阅读次数:
162
题意:给你n个圆,每次选择半径最大的,将它和与它相交的圆全部删去,输出每个圆是在哪次被删的。 KD树模板题。用一个矩形框住这个圆,就可以直接剪枝了。为了防止被卡可以将点旋转一个角度,为了保险还可以多转几个角度。 ...
K-D TREE算法原理及实现 板子题,但这题很神奇的是加了一个优化以后直接从11292ms跑成了1548ms(即代码中替换掉注释部分的内容) 优化具体原理应该是先将maxans/minans尽量放大/减小 这题求的是每个点到其他点的最长路径和最短路径,符合kd-tree的应用范围,那么优化的暴力就 ...
分类:
其他好文 时间:
2018-05-16 20:54:14
阅读次数:
155
"题目链接" KD Tree.因为插入过多点后可能会退化成链,所以左/右子树sz α 整棵子树sz时对整棵子树进行重构。 树的节点数必须是3n?why?洛谷,BZOJ都这样。。 吊打 "CDQ" 。 cpp //65280kb 14368ms include include include defi ...
分类:
其他好文 时间:
2018-05-13 22:03:52
阅读次数:
370