一些有用的tricks

图论

  • 边的形式统一的完全图用虚点。

  • 边权按端点信息生成的图求最小生成树,考虑 Boruvka 算法。

数学

  • 异或比大小考虑 trie 树。

  • 质因数分解朴素 O(n)O(\sqrt{n});预处理 n\sqrt{n} 以内的质数(假设有 cntcnt 个)后可以做到 O(cnt)n10O(cnt)\approx\frac{\sqrt{n}}{10};预处理 nn 以内每个数的最小质因子后可以做到 O(log(n))O(\log(n))

  • 数组中 gcd\gcdii 的数对的个数,可以设 f[i]f[i] 表示 ii 的倍数的个数,则

数据结构

DP