摘要:
同样是LCT维护一个类似最大生成树的东西。 题目链接: "戳我" emmm其实我在uoj上过不去,加的数据我TLE了。。。。。。 但是bzoj上还是可以的。。。。。 关于push_up的小trick:初始化的时候给0节点也初始化成最大值,然后push_up的时候不用管自己的左右儿子是否为空,直接返回 阅读全文
摘要:
题目链接: "戳我" 对于LCT的操作,维护边的话,必须要把边建成一个点,把边权当成点的权值。 这个题就是给你一个无向图,然后每条边都有两个值,现在要求你求出从点1到点n的路径上,作为边权的两个值加起来 最小中的最大值是多少。qwq 有一个比较显然的做法是将其中一个值(比如说a)进行排序,然后按照a 阅读全文
摘要:
题目链接: "戳我" LCT维护连通性的一类题目。 首先看到删边+询问联通相关立刻想到倒着做,将删边操作替换成加边操作。 用LCT来维护。因为LCT是关于树的数据结构,不能维护图怎么办呢。 我们有一个很显然的认识是,倒着做的话,如果加入的一条边的两个端点已经在一个联通块里面了,那么两点之间原先连的所 阅读全文
摘要:
题目链接: "戳我" LCT维护连通性类型的题目,主要是要搞清楚findroot函数的作用——判断根是否相同,和并查集里面的find()函数有异曲同工之妙,如果根相同可以认为两个点具有连通性。 先access打通一道到x的实边,现在x是深度最大的节点。然后再splay x到根节点,因为它深度最大,这 阅读全文
摘要:
bzoj2631(权限题。。。): "链接" 落咕: "链接" 考察的是LCT维护链上信息。 但是这个题不一样的是又有加法又有乘法。。。(有木有想到落咕的模板——线段树2qwq) 因为乘法的运算优先度比加法高,所以我们要先做乘法再做加法(证明?去看线段树2的题解吧),push_down的时候要注意一 阅读全文