『dsu、Trie』Day8
可持久化并查集这玩意真的有用吗。?
upd on Sept:学了,不过就是按秩合并然后用可持久化数组分别存 fa 和 dep/siz。
Stamp Rally
kruskal 重构树板子,套上二分求一下祖先即可。
AND-MEX Walk
注意到答案只可能是 0,1,2。
因为 1 和 2 显然不能同时存在。
证明:可知边权序列不增,如果前面出现 2 则说明第 1 位是 0,由于是与运算所以不可能有 1 了。
判断 0 和 1 即可。
0 好判断,只要全不为 0,也就是最后一个数不为 0。那么必然有一位满足所有
1 有点难。首先肯定保证会有一段 0 的后缀,不然答案是 0。那么前面的数都要 > 1。
所以只要有 1 位使得这些数都是 1,基本就符合条件了。
考虑这种情况,前面一堆
所以还要保证,我们使用 1 ~ w 的位数去一直走,走到最后一个数后面是一个偶数,消除这种可能,这是容易的。
销售基因链
将字符串排序,可以在 trie 上找到给出的前缀对应的区间。
然后用可持久化 trie 找区间内这样的后缀有几个。
注意 trie 循环外面要更新 son。
另解:对前缀字典树节点重编号使得区间连续,在另一科树上合并 ds。
fusion tree
trick:01trie 支持全局加 1。
交换 01 子树,递归 1 子树即可。
trick:维护全局异或和。
每个点建一棵 trie,动态开点,每次可以加一个 pushup 维护信息。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端