BZOJ4162: shlw loves matrix II

版权声明: https://blog.csdn.net/qq_16267919/article/details/82085719

4162: shlw loves matrix II
如果我们已知矩阵 A 的特征多项式 p ( x ) ,其最高次数为 k ,由哈密尔顿-凯莱定理得知

p ( A ) = a 0 A n + a 1 A n 1 + + a k A n k

显然 a 0 = 1 ,那么
A n = a 1 A n 1 + + a k A n k

我们就可以把一个高次项拆成若干次数较小的项,再拆拆拆拆成 k 1 项,显然 k O ( n ) 级别的,然后我们求出 A 0 A k 1 就可方便地计算出答案.
考虑怎么计算特征多项式.
满足 A = P B P 1 的两个矩阵 A , B 互为相似矩阵,它们的特征多项式相同,因此我们先把矩阵变换到如下形式(左下方是全为 0 的三角),变换的时候记得左右乘两个互逆的初等矩阵:
[ a 1 , 1 a 1 , 2 a 1 , n a 2 , 1 a 2 , 2 a 2 , n 0 a 3 , 2 a 3 , n 0 0 a 2 , n 0 0 a n , n ]

然后设 B i 为以 A i , i 为左上端点, A n , n 为右下端点的矩阵,设 f i B i 的行列式,考虑对 B 横着的第一行展开,我们可以得到:
f i = A i , i f i + 1 + ( A i + 1 , i ) A i , i + 1 f i + 2 + ( A i + 1. i A i + 2 , i + 1 ) A i , i + 2 f i + 3 +
然后就可以愉快地递推了.
设指数为 T ,总时间复杂度为 O ( n 3 + n 2 l o g T )

猜你喜欢

转载自blog.csdn.net/qq_16267919/article/details/82085719