依然主要还是自用
首先矩阵一条性质的概述和证明
概述:对于一个临接矩阵$G$来说,它自乘$G^k$次方中$G[i][j]$含义为从i走到j走k步方案数.
证明:比较麻烦,我们设f[i]表示从1走到其他点方案数,那么根据矩阵递推优化,k次就是转移了k次,那么每次走一步,k次就是走了k步
最好手模一下,然后自己随便写一个数据验证一下.
然后矩阵可以优化递推,比如优化菲波纳契数列的递推,暴力递推时间复杂度是$O(n)$的用矩阵快速幂能优化成$8*log(n)$的
具体优化步骤,
首先把之前各项写出来,
先写出这一项可以由什么转移过来,
通过添加系数的方法把各项算出来
就拿菲波纳契数列为例
首先假设f矩阵为
$(f[n], f[n-1])$
根据横乘竖的原则
得出$(f[n],f[n-1])$=$(f[n-1],f[n-2])\times$$\left(\begin{array}{cc}1&1\\1&0\end{array}\right)$
主要还是横乘竖对应好就完了
一些题目
奶牛接力跑,迷路