矩阵总结

问题形式

  • 递推式较大项求值
  • 动态 DP
  • 图上计数/最优化

做法

  • 递推式 & 动态 DP:求出系数矩阵,利用矩阵快速幂进行计算,或使用线段树动态维护
  • 图上计数:邻接矩阵的 $k$ 次幂,表示两点间长度为 $k$ 的路径条数。
  • 矩阵树定理。

事实上可以通过快速幂优化的不只有一般的矩阵乘法,将矩阵乘法中的 $+$ 和 $\times$ 替换为运算 $\oplus$ 和 $\otimes$,只要求 $\otimes$ 具有结合律、$\oplus$ 具有交换律、$\otimes$ 对 $\oplus$ 具有分配律,也可以类似地计算。

矩阵乘法一般不具有交换律,实现时应当注意乘法顺序。

典例

[ABC236G] Good Vertices

求某个点到所有点的经过恰好 $L$ 条边的最小瓶颈路长度。

对邻接矩阵定义广义矩阵乘法 $\circ$:

$$\displaylines{(A\circ B)_{i,j}=\min_k\{\max(A_{i,k},B_{k,j})\} }$$

不难发现 $({A^k})_{i,j}$ 表示点 $i$ 到 $j$ 的长为 $k$ 的瓶颈路长度。

作者

nalemy

发布于

2023-10-18

更新于

2024-03-25

许可协议