摘要:
参考博客 重儿子:对于每一个非叶子节点,它的儿子中 以那个儿子为根的子树节点数最大的儿子 为该节点的重儿子 轻儿子:对于每一个非叶子节点,它的儿子中 非重儿子 的剩下所有儿子即为轻儿子 叶子节点没有重儿子也没有轻儿子(因为它没有儿子。。) 重边:一个父亲连接他的重儿子的边称为重边 //原写法:连接任 阅读全文
摘要:
倍增找 LCA 其实是一种二进制的思想 先二进制的跳到同一高度,然后再尽可能的一起往上跳。有种 lower_bound - 1 的感觉 参考博客 洛谷模板 #include<bits/stdc++.h> #define repE(i,u) for(int i = head[u];i;i = E[i] 阅读全文
摘要:
字典树,前面的AC自动机里面用的东西 $01Tire$ 可以用来解决 \(xor\) 问题 struct{ int c[N][2],tot; int getnode(){ tot++; c[tot][0] = c[tot][1] = 0; return tot; } void insert(int 阅读全文
摘要:
\(OI\) 👴 \(hjt\) 发明的,所以叫主席树 可持久化线段树 所谓可持久化,其实就是保存了历史版本信息,类似前缀和的一种信息。 但是其实就是每次都进行单点修改,区间修改的话还没有见识过。 好像是有这样的题目,以后再学。 每次更新一条链,在动态开点的时候复制之前节点的信息,然后再继续开点 阅读全文