树链剖分
YiPeng_Deng
这个作者很懒,什么都没留下…
展开
-
JZOJ6869. 【2020.11.17提高组模拟】pastel
Descriptionn≤3e5,q≤5e5n\le3e5,q\le5e5n≤3e5,q≤5e5Solution考虑维护每一个黑点,如果没有修改,子树查询可以把子树内的每一个黑点的w∗cntw*cntw∗cnt求和,再考虑这个点的归属点权值vvv,贡献v∗(szx−∑cnt)v*(sz_x-\sum cnt)v∗(szx−∑cnt),单点查询可以直接询问归属点的权值,用一个线段树维护上面的值,以及4操作。如果有加入黑点的操作,简单维护一下上面的东西,把新黑点的权值变为它的归属点的权值。如原创 2020-11-18 09:25:21 · 381 阅读 · 0 评论 -
CF504E Iron Man
CF504E Iron Man一个边权为111的nnn个点的树上有mmm个人在运动,第iii个人从viv_ivi以cic_ici的速度在tit_iti时刻出发前往uiu_iui求最早什么时候有两个人相遇(可以在边上)。n,m≤1e5n,m\le1e5n,m≤1e5。Solution首先树剖,变成链上的问题。如果以时间为横坐标,深度为纵坐标,那么一个运动的人就是一条线段,现在要求若干条线段最早在什么地方相交。显然一条线段相交的线段是在它加入的时候距离它最近的,否则在更早原创 2020-10-23 19:20:11 · 172 阅读 · 0 评论 -
【CSP-S2019D2T3】树的重心
DescriptionSolution考场上没有足够的时间,也并没有打二叉树的,所以只有55分了。。。。首先树的重心有几个性质我居然一直不知道!(虽然题面里面都有提及,但是我居然将它们忽略了)。1.树的重心当且仅当最大的子树大小小于n/2。如果不是的话可以通过往大于n/2的子树中调整获得更优的答案。再推一下可以发现,当这个时候的重心的最大子树的size为n/2且n为偶数的时候,这个儿...原创 2019-11-25 21:44:23 · 673 阅读 · 0 评论 -
【LCT时间复杂度】JZOJ6257. 【省选模拟8.9】修路
Descriptionn<=1e5Solution考虑颜色覆盖的操作与LCT中的Access操作类似,所以可以(证明)得到连续段颜色的个数之和为nlogn级别的。直接用LCT,每一个splay树都代表同一种颜色,刚开始有n棵,即每一条边都是虚边,然后Access一下,与LCT完全一样,再用个树状数组求逆序对个数。当然离线下来用树链剖分,每条链用一个set维护不同的颜色也可以(难...原创 2019-08-09 20:02:19 · 605 阅读 · 0 评论 -
JZOJ6359. 【NOIP2019模拟2019.9.15】小ω的树
Description点数n<=3e5,询问m<=3e4Solution显然有一种暴力的想法,按照边权从大到小排序,然后连边,答案就是最大的:当前连通块的点权和sum*当前的边权val。根据连边(并查集)的顺序,我们可以构造出一颗克鲁斯卡尔重构树克鲁斯卡尔重构树:link(x,y):新建z,fa[x]=z,fa[y]=z;考虑如果将a[u]变成v,那么对于包括...原创 2019-09-17 22:13:18 · 378 阅读 · 0 评论
分享