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

[WC2014]紫荆花之恋

时间:2018-08-06 11:42:46      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:假设   复杂   时间复杂度   维护   font   style   max   节点   kd-tree   

题解:

首先考虑点分治

dis(i,u)+dis(i,v)<=value[u]+value[v]

移项就很容易发现用平衡树可以很简单的维护这个东西

但是有重复,需要在下一层的每个平衡树内减去这个答案

这个时候时间复杂度是nlog^2

现在需要动态加点

假设加这个点不会破坏点分树结构我们就暴力加点

经过log层,查询log复杂度,时间nlog^2

但可能会破坏点分树结构,比如一条链

这时候可以像kd-tree和替罪羊树一样选择重构

具体的:就是max子树*alpha>当前节点 alpha可以自己调一下,大概在0.8左右吧

[WC2014]紫荆花之恋

标签:假设   复杂   时间复杂度   维护   font   style   max   节点   kd-tree   

原文地址:https://www.cnblogs.com/yinwuxiao/p/9429262.html

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