抱灵技巧
-
不用(namespace)或者(c++11)的话,变量名不能定义(y1)
-
求逆元时(inv[0])一定要初始化为(1),不然组合数会出锅
-
杜教筛数论分块(l)要初始化为2
-
线性筛莫比乌斯函数的时候(mu[i]=1)
-
一定要计算程序内存是否过大,实在不会的话可以利用函数检验,在(cmd)里面使用 (size ....exe)
-
linux下评测时头文件不能加(windows.h)
-
平衡树有关的序列操作,如果牵扯到(a[0])时,记得在最开始初始化时将(a[0])加入平衡树
-
对于多组数据的问题时,特判后也要记得读完所有数据
-
pow函数不能处理结果大于int的幂
-
斜率优化时单调队列初始化 (h=0,t=0)不然会少更新前几个元素
-
主席树维护区间个数时,要么(insert)时对于来的路径上的每一个点手动(+1),要么写(pushup)
小trick
-
链式前向星删边可以打(tag)实现
-
维护取模的题可以考虑用作差维护,余数 = 总和 - 商 * 除数 ,当除数或商不变时,只需要维护另一个值的个数就可以了
-
对于区间上可合并的问题,可以考虑倍增或者线段树,但倍增有可能会被卡