我的SB错误合集

  1. 不特判边界情况 (特别是数字“1”)
  • 1 个连续
  • \(2^{64}\) 不能写 1ull << 64,那样结果是 1 而不是 0
  • \(2^{64}\) 不能直接输出
  • 不判无解
  • 可能有多个环的基环树 DP 不判断多个环
  • tarjan 后算最少加边数量时不特判只有 1 个强连通分量,加 0 条边的情况
  • tarjan 缩点后 DP 的时候不考虑重边
  • floyd 输入时不判重边
  1. 少写东西
  • 数组不初始化
  • 多测不清空
  • spfa 点出队后不写 vis[u] = 0
  1. 写反
  • 循环从 0 开始和从 1 开始错误
  • i, j 打错
  • 行列 n, m 写反, x, y 写反
  • 循环顺序写反
  1. 其他 SB 错误
  • 数组开小,MN 开错,或者只开到数据范围
  • 快速幂初值赋值成 0
  • vis 数组标记位置错误
  • 不开 long long 见祖宗,左移(爆 int1LL 写成 1
  • doublelong long 在计算/传值时写成 int
  • n, m, v, e 写错
  • i += 2 写成 i++
  • 把 \(O(n)\) 的函数当成 \(O(1)\),没有预处理,结果 TLE 掉
上一篇:Tarjan离线求lca


下一篇:强连通分量(缩点)学习笔记 (updating)