错贴本

字符串

  1. 哈希进制搞质数

  2. KMP 数组别开太大,否则 ({color{Gold}{TLE}})

  3. 没有必要 (strlen) 的时候尽量别用

  4. (base) 过大跑的慢

(SPFA)(2021/1/31)

  1. return 0 别放循环里面

  2. 边表是注意数据类型特别是 double!!!

  3. 循环里尽量不要设变量去代替边表,类型会出错

  4. 多用scanf 少用cin

  5. 多组数据 边表 head 别忘清零

二分

  1. 实数二分别 +1

差分约束(2021/2/1)

  1. 个人感觉跑最短路好些

  2. >0 就为1, >=0 为0

  3. (SPFA) 时,判断是否联通尽量将边界开大些 例如 1e8, 最短路如果不连通会跑无数次 inf.

(tarjan)(强连通分量)

  1. void 类型 (tarjan), 别定义错了

  2. 一晚上的血教训,不要用边表了,用 (vector) 吧!!!!!!!!,TMD卡了四个题,全是 (TLE).


  3. if(d[i] == 1) != if(d[i]) 前者只有一, 后者不是零的都记录,哎~又是一晚上----2/3

(tarjan) (桥和割点)

  1. 根节点要求孩子多于两个才可,非不为就行!!! if(child >= 2 && u == fa) cut[u] = 1;//child >= 2!!! 不是 != 0

  2. 根节点和非根节点的处理要注意

if(low[v] >= dfn[u] && u != fa) cut[u] = 1;// 保证不是根节点 
      if(fa == u) child++;// u == fa 才记录孩子 

专场错误

  1. 图论专场
原文地址:https://www.cnblogs.com/lToZvTe/p/14289417.html