05 2023 档案
摘要:目前唯一能过的动态点分治题解。 在点分树的每个点上维护 表示 子树内的点到 的距离集合, 表示 到其每个子树的距离最大值集合。特别地,若 是白点,还要在 中加入 , 即 $P_u=\begin{cases}\{\max\
阅读全文
摘要:能字符串哈希为什么要写高科技啊。 点分治之,考虑一个子树 的贡献。 考虑如何判断 到分治中心 的路径能否成为“ 的重复”的前缀 / 后缀。 先序遍历 ,动态地维护 到当前遍历到的点 的路径形成的字符串 , 进入一个点相当于在
阅读全文
摘要:树上问题全家桶。 以给出的点集建出虚树,然后问题转化为对每个关键点,求其到其他关键点的虚树链上颜色段数之和。 注意虚树的一条边是原树的一条链,所以虚树某条链上的颜色段数并不是简单的虚树上这些点形成的颜色段数。 所以令虚树的边权为其在原树上对应的链上的颜色段数 ,则此时虚树某条链上的颜色段数为
阅读全文
摘要:【模板】读题 本蒟蒻码量上 3k 的第二题 公司为了减少成本,回收时从区域 到任何一个区域 都选择长度最短的路径,如果有多条到某一个区域的最短路径,则选择所有最短路径中该区域的前一区域编号最小的一条路径,称这条路径为 到 的回收路线。所有的回收路线组成一棵树状
阅读全文
摘要:一篇题解需要一个头图。 A 状压 BFS。 考虑状压下标 和坐标 的转化,容易发现 x = i >> 2, y = i & 3,而 i == x << 2 | y。 剩下的就好写了。 #include <queue> #include <cstdio> #include <cst
阅读全文
摘要:设当前最优解为 ,当前指针为 ,跳到的新位置为 。 如图, 与 比是优解,而 与 比是劣解。 无论哪种写法,当前方案对应 的方案。 与 比:形如 int del = now - ans; if(d
阅读全文
摘要:单点修改,矩阵 kth,考虑树套树。 发现需要套三层,考虑怎么不写权值线段树套二维线段树。 用 KDT 代替掉两层数据结构即可。 KDT 套权值线段树是不可行的,因为 KDT 依赖 push up,需要权值线段树合并。 权值线段树套 KDT 是可行的,外层权值线段树上每个点维护一棵 KDT 表示对应
阅读全文
摘要:众所周知,树状数组有常数小,代码短等优点。 本文将进一步开发树状数组不为人知的用法。 树状数组维护不可差分信息 树状数组是 叉树, 节点的儿子为 。 所以可以类似线段树地 push up 维护单点
阅读全文
摘要:部分分看全,认真想每一档(春测 T4 忘了贪 ) 强制在线要记 lastans 和异或 lastans(省选模拟赛) 状压下标从 开始,大于 位开 long long(省选模拟赛) 看清每个变量什么意思(省选模拟赛) 好好读题,模拟样例后再写题(省选 D1T3,D2T2
阅读全文
摘要:手机写博客真痛苦 Day 1 来的比较早,开幕式坐在后排中间, 然后 zz 的黄蓝校服在一堆白校服里特别显眼,这下给学校丢大脸了。 开幕式有个颁奖环节,有周雨扬, lc:你猜猜之前来学校的那个周雨扬是不是真的周雨扬 然后周雨扬好像还没赶过来,给另外两个人颁了奖( 所以 ACM 队名是可以随便起的吗(
阅读全文
摘要:lxl 说过邻域信息维护父亲一定死,所以数据结构维护每个点的儿子,特判父亲。 考虑每个点的数据结构需要支持什么操作:全局加一,单点修改,全局异或和。用 01Trie 维护。 与维护最大异或对的 01Trie 不同,从低位到高位建树,每个点上维护子树异或和,修改时 push up。 考虑怎么 push
阅读全文