循环矩阵,就是循环的矩阵。
循环矩阵有一些性质:
两个循环矩阵,相乘后,仍是循环矩阵。
这样,在进行矩阵乘法时,只维护第一行即可。
复杂度暴力(O(n^2))。其实是循环卷积,可以用NTT优化至(O(nlog n))。
循环矩阵的行列式也可以快速计算。
对于(n*n)的矩阵,设(w^k)为(n)次单位根。
设多项式(A)为(a)的生成函数。
则(det = prod limits_{k=0}^{n-1} A(k))。在(n|p-1),(p)为素数时容易快速计算,复杂度(O(n^2))。
若不满足(n|p-1),也是可以算的。
中间的那部分是变为交点式。
代码略
其实,除了循环矩阵,有些其他矩阵也是可以优化的。
这道题,写出高斯消元的矩阵后,可以发现矩阵有特殊性质。
右上角有很大一部分为0。
利用这个,可以简化消元过程,将复杂度优化至(O(n^2))。