0%

神秘犯蠢备忘录

记录一些犯蠢记录,以防再次出现。

图论

网络流

字符串

  1. 如果输入给定了串的长度,且可能是个空串,则要特殊处理(不读入)

多项式

数论

筛法

  1. min_25 筛和杜教筛过程中,想清楚 \(n\) 代表的是值还是离散化后的值。这里规定 DP 过程用离散化的值,递归过程用原值。

数据结构

线段树

  1. 如果用 lazy[o] 标志表示区间 Add 次数,则更新时应该乘上 lazy[o]。例子:

    区间加 1,询问区间和

    1
    2
    s[lch] += (M-L+1) * lazy[o];
    s[rch] += (R-(M+1)+1) * lazy[o];

  2. 规定 lazy 表示:该节点的值已更新,但是儿子节点还没有。每次下传时需要给儿子打 lazy 标志并更新值。

动态规划

计算几何

其他

  1. 变量记得加 static 或者初始化。

  2. 快速幂 ret = 1 而不是 \(0\)