title: bugset
tags: [调试]
categories: [OI, 个人整理]
常见
没加快读
爆数据类型
多个循环时变量别搞混,i j k idx
在局部里开变量,即使是结构体,也会是垃圾值
在运算时类型不会强制转换,如
long long n = ...;
__int128 a = n * n; n * n 有可能会爆
不能命名东西为y1,本地编译会通过,但是在评测机上过不了。
算空间复杂度小心谨慎!!!
初始化!!!
线段树
pushup要在update和query的最后写,而不是pushdown里面。
动态开点线段树的update返回当前节点编号,以更新父节点的ls和rs。
pushdown最后要把标记清空。
完全覆盖时return。
线段树二分时深究返回值是啥。
动态开点线段树开多大
树状数组
不能修改0节点!!!
笛卡尔树
忘入栈
last应该在pop之前统计
并查集
有的题merge是有顺序的
最小生成树
boruvka算法最小值应该用find(u) 而不是u
逆元
fac[i] = fac[i-1] * i % MOD,而不是*(i-1)。
哈希
哈希尽量别开long long,耗空间巨大!!!
哈希计算的时候开1ll
检查调用初始化!!!
常数
如果n/i是一个常数,d是while中要枚举的东西,写d <= n/i而不是d*i<=n。
浙公网安备 33010602011771号