代码模板-矩阵汇总矩阵相关代码模板:矩阵乘法与缓存友好的循环顺序、矩阵快速幂(单位矩阵初始化、跳过零元优化),以及 (min, +) 广义矩阵乘法求恰好经过 k 条边的最短路。2026-09-07代码模板
代码模板-康托展开 康托展开 康托展开用于求 $1 \sim n$ 的排列在所有排列中的字典序排名,用树状数组维护未使用过的数中比当前数小的个数。预处理阶乘 $O(n)$,单次展开 $O(n \log n)$。 123456789101112131415161718...2026-07-29代码模板
代码模板-ST 表ST 表基于倍增思想,用 $st[i][j]$ 维护以 $i$ 为左端点、长度为 $2^j$ 的区间 $[i,\,i+2^j-1]$ 的最值,由两个长度为 $2^{j-1}$ 的子区间合并而来。预处理 $O(n\log n)$,单次查询 $O(1)$...2026-07-22代码模板
代码模板-树状数组汇总树状数组的常用代码模板:单点修改区间查询、逆序对(含离散化)、区间修改单点查询(差分)、区间修改区间查询(维护 b[i] 与 i·b[i]),并给出相关学习笔记链接。2026-07-16代码模板
代码模板-二分 整数二分 情况一:左半段满足,右半段不满足 → 求最后一个满足的点 12345678910bool check(int x); // 判断 x 是否满足性质int solve_r(int l, int r) { // 找最后一个满足性质的点 ...2026-07-13代码模板