随笔分类 -  分治

摘要:这题分三步:葺网(期望)、淀粉质(点分治)、蓉翅(容斥),再佐以芬芳团(FFT),一道巨难无比的 luogu 黑题就诞生了。 期望 先考虑在淀粉树上,\(i\) 点在 \(j\) 点的子树里的概率。实际上这个问题的每种情况相当于是 \(n\) 个点的各种排列方式。这也就相当于,我们在选择 \(j\) 阅读全文
posted @ 2025-01-18 21:25 长安一片月_22 阅读(19) 评论(0) 推荐(0)
摘要:啊啊啊啊啊啊啊啊啊啊啊我终于改完啦啊啊啊啊啊啊啊。 因为没有在最开始的时候将所有点设置为已经重构的,所以直接 \(R15-R70\) 间卡了两三天。 似乎也是我第一次大规模使用指针了。 这道题假如只有一次询问,就是一道简单淀粉质,直接在根节点建立平衡树,记录 \(r_x-dis(x,rt)\),然后 阅读全文
posted @ 2025-01-05 10:12 长安一片月_22 阅读(19) 评论(0) 推荐(0)
摘要:三棵树就很毒瘤了,我们一棵一棵看。 关于第一棵树的路径,经典解法就是点分治和边分治,考虑哪种更加简单。 设 \(dis1/2/3(x)\) 表示 \(x\) 在第 \(1/2/3\) 棵树中的深度(第一棵树的深度当然是点到重心或重边的距离),\(lca2/3(x,y)\) 表示在第 \(2/3\) 阅读全文
posted @ 2024-12-24 07:46 长安一片月_22 阅读(15) 评论(0) 推荐(0)
摘要:随机化好题,但是不会证。 考虑把树看成一条链,链的每个点上缀了一棵树。 那么先随机出两个点 \(x,y\)(实际上随机一个点,另一个点固定似乎更好?),然后对于当前这棵树上的任意点 \(z\),都让他进行一次询问,答案为 \(o=Q(x,y,z)\)。 那么当 \(o=z\) 时,显然 \(z\) 阅读全文
posted @ 2024-12-20 15:56 长安一片月_22 阅读(21) 评论(0) 推荐(0)
摘要:难度在最近遇到的题里相对较高,在这里写一篇珂学题解。 (以下是学校给的部分分) \(20\%\):直接暴力枚举。 另外 \(20\%\):假如我们取 \(pre\),对于 \(pre<l\) 的,\(ans++\),明显二维偏序,树状数组或 \(cdq\) 即可,时间复杂度 \(O(n\log n) 阅读全文
posted @ 2024-08-15 20:22 长安一片月_22 阅读(60) 评论(1) 推荐(0)
摘要:题目链接:\(luogu\) 声明变量: \(tr1/tr2\):原树/点分树,用链式前向星维护 求链长(包括求 \(lca\)) \(a_i\):原树欧拉序 \(st_{i,j}\):\(RMQ\) 数组 \(dist_i\):在原树中点到根的距离 \(dep_i\):在原树中点的深度 \(lg_ 阅读全文
posted @ 2024-02-03 21:07 长安一片月_22 阅读(45) 评论(0) 推荐(0)
摘要:\(CDQ\) 分治是一种特殊的分治方法,基本思想就是前一半的结果辅助后一半答案解答。 一、归并排序 提到 \(CDQ\) 分治,就不得不提到归并排序。 作为一种 似乎只有在瑞士轮里才有用的算法,归并排序有着优秀的时间复杂度,短小精悍的代码,十分的可爱。 首先,我们将问题转换成这样(\(l,r\) 阅读全文
posted @ 2024-02-03 08:40 长安一片月_22 阅读(49) 评论(0) 推荐(0)