
lca
Icefox_zhx
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
spoj_cot2 Count on a tree II(树上莫队+离散化)
题意:给两个点u,v,询问两点路径上有多少种不同的权值。树上莫队。然后权值要离散化。树上区间转移呢,基本就是这样的:记上次询问的两点为lastu,lastv,现在询问的两点为u,v,那么对于路径(lastu,u)上的所有点的存在性取反(就是原来答案里有就删掉,没有就加上),对于(lastv,v)同理。但是因为还有讨厌的lca的存在,所以我们一直都没把lca放在答案里。最后记答案时单独处理lca。具原创 2017-07-20 15:30:12 · 525 阅读 · 0 评论 -
bzoj3611 [Heoi2014]大工程(虚树+lca+树形dp)
关键还是在于K个点两两之间的lca最多只有k-1个。 因此我们可以建出虚树,然后一遍dp求出所有答案。 复杂度O(K)O(K)原创 2018-04-25 22:10:35 · 268 阅读 · 0 评论 -
bzoj3572 [Hnoi2014]世界树(虚树+树形dp+倍增+二分)
首先我们还是针对每一次询问建出虚树。在虚树上搞事情,这样复杂度就只与关键点个数有关了。我们考虑一棵虚树怎么统计答案。我们首先两遍dfs求出虚树上每个点最近的关键点,记作bel。 然后考虑虚树上的每一条边x->y.首先倍增的求出x在原树上的儿子(即x->y路径上的第一个点z)。那么原树上在x->y之间的就有sz[z]-sz[y]个点。(即原树上x->y这条链(不含首尾)及挂在这条链上的所有点)。原创 2018-04-25 20:51:00 · 275 阅读 · 0 评论 -
bzoj5165 树上倍增(lca)
这题真的就是个倍增求lca囧 不过卡空间。。。原创 2018-04-21 21:08:58 · 389 阅读 · 0 评论 -
bzoj4568 [Scoi2016]幸运数字(树上倍增+线性基)
多次询问路径权值集合的子集的最大异或和。 很容易想到线性基。 我们树上倍增跳lca的同时,暴力合并出我们的线性基即可。 复杂度O(nlogn602+mlogn602)O(nlogn60^2+mlogn60^2) 按道理应该过不去,不过可以卡过去qaq 可以考虑写st表去掉一个logn。tips:人生一大悲痛,原来我一直写的倍增是有问题的qaq,注意那个预处理时的跳倍增的i,我一直以为写成n原创 2018-04-22 22:19:21 · 270 阅读 · 0 评论 -
bzoj4326【2015提高】运输计划(二分答案+lca+树上差分前缀和)
这题我哪会啊。。。这题卡常,我们把每个路径的lca求一次就记录下来,每条路径的长度求出来(借助预处理得出的dis数组,dis[i]表示i到根的路径长度,则len[i][j]=dis[i]+dis[j]-2*dis[lca(i,j)])。然后按每条路径的长度从大到小排序,也许能快些( 让最大值最小问题。。二分答案,每次判定最大值<=mid是否可能。那么对于每条长度大于mid的路径我们都得给...原创 2017-10-24 21:54:35 · 566 阅读 · 0 评论 -
hdu4547 CD操作(lca+map)
就是求lca。。。要注意如果A=B的话是需要0步。字符串映射可以采用map。原创 2018-01-26 21:09:43 · 377 阅读 · 0 评论 -
bzoj4719 [Noip2016]天天爱跑步(树+lca+树上差分+思路题)
进入bzoj法眼的noip(lus)题hh。题解太麻烦啦。。。不写啦。。。就体会一下思想:要是对于每条路径操作,看他会影响哪些点的贡献,铁铁的会t。所以考虑怎样的一条路径会对一个点产生贡献,先讨论简化版的链的情况,发现要讨论左右。结合另外两个部分分,感觉就是把路径分成两半,x->lca,lca->y。分别讨论,然后进行神奇的树上差分,用vector来维护删除操作。题解去观摩这里吧原创 2017-11-01 21:47:38 · 480 阅读 · 0 评论 -
CF 832D Misha, Grisha and Underground(Tree+lca)
题目大意:给你一棵树,n个节点。q个询问,给你a,b,c三个点,任意对应s,f,t,记s到f的路径为(s,f),让你求(s,f),(t,f)两条路径上的点的交集大小最大为多少。首先我们发现,对于给定的a,b,c,就三种情况即f=a,f=b,f=c.所以我们只需计算三次s,f,t,取最大即可。现在考虑对于给定的s,f,t,如何计算路径上的点的交集。设l1=lca(s,f),l2=lca(t,f),l原创 2017-07-26 13:30:18 · 456 阅读 · 0 评论 -
bzoj3052 [wc2013]糖果公园(树上莫队,带修改)
树上莫队参见spoj_cot2,带修改莫队参见bzoj2120.这道题就是把这俩和在一起了╭(╯^╰)╮。bzoj上时间很宽松。。大家如果没把握还是不要去爆oj了的好。给大家推荐个好地方UOJ,这题的题号是58。可以先在那过了再说。。uoj的评测机好好的说。。顺便我树上莫队也是从建了uoj的vfk那里学来的。。大家可以去搜一下他的博客。我在这里放链接是不是算侵权??不懂。。只能orz神犇。(因为打原创 2017-07-21 21:19:46 · 649 阅读 · 0 评论 -
bzoj3991 [SDOI2015]寻宝游戏(虚树+set)
动态删减关键点,我们发现答案就是虚树的边长和*2. 而虚树的边长和二倍正好就是把所有关键点按dfs序排序后相邻两点间的距离和。(包括最后一个和第一个的距离和)因此我们用set维护一下即可。原创 2018-04-25 23:22:07 · 317 阅读 · 0 评论