爆零小技巧

· · 个人记录

包教包会

  1. 线段树没开四倍空间。

  2. 多测清空用 memset 。 (cf被hack的惨痛教训)

  3. 快读没判负。

  4. multiset 调用 erase 的时候,如果传的是值,它会把所有该值都删掉而不是只删一个!

  5. 对于一些做法跟值域有关的问题,擅作主张的认为其 \le n 。比如一些网格题要转化成二分图时,有时候 n 不是网格的大小而是点数(一张巨大的稀疏网格图)。

  6. 存可重集脑抽打了个 set

  7. std::multiset::count 的复杂度是 \log n + cnt 的! 没错又是multiset

  8. 使用 sqrt 没判负。

  9. 强制在线规则抄错。

  10. 点分治 calc 时,正着反着扫儿子把根也扫了两遍,或者根的答案没有更新。

  11. 组合数插板法没开两倍空间。

  12. nth_element 默认是第 k 小,以为是第 k 大。

  13. 题目模数抄错

  14. if (i > 1) 写成 if (i)

  15. 主席树习惯性的只开了四倍空间。。。

  16. 自己写的李超树插入时有 swap 的操作,封装时同个直线多次插入没有重置。