模板默写&复习
别到时候题会做了板子不会写……
数据结构 (3 / 5 - 0 / 4)
主席树 (done)
Tips:
- 注意指针的值本质上是地址,复制要重新
new
一个而不是直接把指针复制过来。
即:应该写成node *now = new node(*lst)
而不是node *now = lst
。
FHQ Treap (done)
Tips:
- 文艺平衡树别忘了时刻 pushdown。
可持久化 FHQ Treap*
LCT*
点分树
回滚莫队 (done)
莫队二次离线*
Segment Tree Beats
KTT*
KDT*
图论 (1 / 1 - 0 / 2)
上下界最大 / 最小流 (done)
Tips:
- 费用流不要忘了加下界的费用……
KM*
支配树*
数学 (4 / 4 - 0 / 1)
万能欧几里得 (done)
Tips:
- 注意算
(a * n - b) / c
和(c * m - b - 1) / a
时,a * n
和c * m
可能会爆,也就是当a, b, c, n
为long long
时要写成((__int128)a * n - b) / c
和((__int128)c * m - b - 1) / a
,为int
时则改成long long
。
杜教筛 (done)
高斯消元 (done)
Tips:
- 消元时列可以只从 \(i\) 开始枚举,行要枚举所有行。
线性基 (done)
BM*
字符串 (3 / 3 - 1 / 1)
ACAM (done)
Tips:
- 注意起点出边要特殊处理。
SA (done)
Tips:
- 记牢关键结论 \(height _ {rk _ i} \ge height _ {rk _ {i - 1}} - 1\)。
- 记得清空桶。
SAM (done)
Tips:
- 复制节点别忘了更新新节点的
len
。 - 记得复习 SAM 的各种应用。
GSAM* (done)
多项式 (2 / 2 - 0 / 3)
拉格朗日插值 (done)
FWT (done)
FFT*
NTT*
多项式全家桶*
计算几何 (2 / 3)
凸包 (done)
旋转卡壳 (done)
半平面交
杂项 (2 / 4 - 0 / 1)
决策单调性,四边形不等式 (done)
Tips:
- 别忘了复习一下二分单调栈写法。
CDQ 分治
虚树 (done)
Tips:
- 注意特判 \(1\) 是关键点的情况。
- 注意去重。
Burnside & Polya
自适应辛普森积分*
……