08 2024 档案
摘要:这次算是完全搞懂了吧()()( 其实追溯到了单调栈的一些本质问题,而且搬到笛卡尔树上特别清楚了。 你线段树维护单调栈上升/下降,本质上是维护笛卡尔树里面一个点/根的最长左链/右链。 #include <bits/stdc++.h> #define raed read #define cacl cal
阅读全文
摘要:暑假以来?包括补题和 VP。 CF 1. CF1982 C dp + 数据结构优化 / 贪心。 D 转化成解方程。裴蜀定理。 E 分治。每次简化 1/2。 。然后再算一算中间
阅读全文
摘要:Drazil and Morning Exercise 可以换根求。 对于一段乱序序列,你不好求其中 max - min 的限制。 根据重心的性质,如果你让重心为 root,那么向下 一定单减。 这样,你就对每个点在末尾的情况,树上倍增找到最大的点,树上差分即可。 现在想到了
阅读全文
摘要:大融合 麻烦的点在于你每次已经是联通的。所以你每次两个点在并查集里面是联通的。 显然答案是 。 不妨钦定树深点连向父亲。并查集维护最浅的一个位置的信息。 每次计算 显然要选择较深的一个点。考虑如何计算这个点的答案啊。(其实另外
阅读全文
摘要:可持久化并查集这玩意真的有用吗。? upd on Sept:学了,不过就是按秩合并然后用可持久化数组分别存 fa 和 dep/siz。 Stamp Rally kruskal 重构树板子,套上二分求一下祖先即可。 AND-MEX Walk 注意到答案只可能是 0,1,2。 因为 1 和 2 显然不能
阅读全文
摘要:颓了一天了。md 虽然还没有过线段树合并板题,但早就用过了。 注意,单次合并复杂度是 的,但是一直合并,保证最终共有 个元素的话,总时间复杂度也是 的。不要理解成单次 。 一个人千万不能忘记自己的初心,有时候
阅读全文
摘要:1 势能 1.1 有一类之前就见过的操作。区间取模区间开方。 开方是说在 次过后就不变了,所以这之前暴力即可。 取模则是说如果一个数能取模那么至少会减少一半,所以一个数最多暴力操作 次就没了。对于一个区间你维护最大值看是否需要递归进行操作即可。
阅读全文
摘要:推荐歌曲《我是逆蝶》。 A Divide Square 挖掘特殊点:有一个端点在边缘上。 如果我们扫 x 坐标,维护 lst 横 和交叉的 竖,非常不好维护,并且 TLE。 结论:一个交点会至少增加一个区域。证明显然。 当然还有一点 corner case。 B Cow Tennis Tournam
阅读全文
摘要:1 CF 1.1 B 被诈骗了。我们的构造要向“每个区间只有 1 个数不一样考虑”。 1.2 C 比较难。但是出的好。 注意到如果我们不删除中位数这个位置的数,那么那个数是一定的。 所以我们可以把 加到最大的可以加的数上,统计答案就在这个数,然后二分算中位数即可。 其它策略? 我们可不可
阅读全文
摘要:Round 1 1.1 得分 105。rk 倒 1。 1.2 BB 键盘上下左右和回车回格都坏的,只能用屏幕键盘。 也一定程度影响了心态,导致不想打暴力甚至。 但是题感觉真没那么难,破防了一会过后觉得自己不能继续颓了。 把基础打牢。套路积累已经够了,回来卷一些基础的东西吧。比如 CF 前面的题。 1
阅读全文
摘要:0 记住 题有三不做。第一,yyn 出的题不做。第二,码量不小的黑不做。第三,超过 NOIP 范围的不做(多项式……)。 你不会真的想爆切 IOI??? 所以一天的任务就非常轻松了。 1.1 Tree Generator™ 做过不讲。 1.2 Pudding Monsters 做过。把等号变成不等号
阅读全文
摘要:1.1 OpenStreetMap 单调队列预处理行。 再做一次列。 1.2 Fruit Sequences 100 行笛卡尔树伪了。 没什么好说的。贡献。记录每个长度的最新下标。 再维护一下每次的增量。 1.3 League of Legends 模拟赛原题,改成了单调队列优化。 核心思路就是你把
阅读全文
摘要:在这之前,我们先刷一下 CF。 1 CF 1.1 CF1997E (edu168) 注意到每个 只会升 次级,那么总的升级次数就是调和级数,是 。 每次升级二分+数据结构 log^2 算。3log。 考虑每个位置,由于单调性,直接二分出分界值。
阅读全文
摘要:8.5 1. AGC040E 因为操作有 2 个,自然想到把 拆成 2 个相加的形式。 然后有 1 个显然的 2 维 dp。 挖掘性质,发现一个 最多有 个 dp 值,原因是 dp 只可能 0/+1/+2。 又有单调性,维护一下分界点。 2. 冒泡排序 等价于要求
阅读全文