$kd$ 树 + 定期重构.
由于这道题强制在线 + 卡空间,其它时间效率上比较优秀的二维数点方法不太适用.
利用 $kd$ 树维护所有点, $kd$ 树的本质是高维的二叉搜索树,所以插入的时候就在上面选方向走.
需要定期重构保证树的形态平衡一些,也可以像替罪羊树一样,维护一个因子判断是否需要重构.
1 | //%std |
夢はここに 思い出は遠くに
$kd$ 树 + 定期重构.
由于这道题强制在线 + 卡空间,其它时间效率上比较优秀的二维数点方法不太适用.
利用 $kd$ 树维护所有点, $kd$ 树的本质是高维的二叉搜索树,所以插入的时候就在上面选方向走.
需要定期重构保证树的形态平衡一些,也可以像替罪羊树一样,维护一个因子判断是否需要重构.
1 | //%std |