罪的晚风,可曾带回朝露映的清纯?|

LarsWerner

园龄:4年11个月粉丝:20关注:3

3.27 算法补全:行列式(扩展)

行列式 Ex

海森堡矩阵行列式

上海森堡阵是满足其次对角线下的值都为 0,即只有 ij+1 处的 ai,j 的矩阵。

上海森堡阵的行列式可以 O(n2) DP 求解,因为在这个矩阵中选择一个不含 0 的排列,一定满足会形成如下形式:x,1,2,,x1y,x+1,,y1,即若干个区间的环拼接起来。于是我们直接 DP,fi 表示 [1,i] 构成若干个环的方案权值和,那么 fi=j(1)jifjgj+1,i,其中 gl,r=al,ri=l+1rai,i1.

特征多项式

对于方阵 A,定义其特征多项式 pA(λ)=det(λInA)

对于方阵 A,B,若存在初等可逆矩阵 P 满足 B=PAP1,那么称 A,B 互为相似矩阵。

相似矩阵特征多项式相同。

证明:

pB(λ)=det(λIPAP1)=det(λPIP1PAP1)=det(P(λIA)P1)=det(P)det(λIA)det(P1)=pA(λ)

任意一个方阵,都可以找到一个海森堡矩阵与其相似。

消元方法:考虑我们在消元(构造 P)的同时,算上 P1 带来的贡献。我们进行消元的时候会进行行变换:Ri:=Ri+kRj,那么其对应右乘 P1 带来的变换就是列变换 Cj:=CjkCi;类似的,交换 Ri,Rj 的操作,对应右乘 P1 带来的变换就是交换 Ci,Cj。我们若怀着消成海森堡阵的目标,容易发现列变换不会造成什么影响。

于是普通方阵求特征多项式只需要先变消成一个上海森堡阵,然后再 DP 出其特征多项式即可。

对于上海森堡阵,就很好做了,直接对上述 DP 进行一个修改,得到 pi=λpi1jpjgj+1,i

https://judge.yosupo.jp/submission/199210

A+Bz 行列式

首先我们可以用求特征多项式一样的方法求出 det(A+Inz)(代 Ai,j=Ai,j 就是特征多项式)。

于是对于 A+Bz,考虑把 B 消元成 In。但是有可能 B 不满秩,那么就无法消成 In。这种情况下,考虑一个操作:将这一行乘上 z,即把这一行从 RA+RBz 变成 RAz+RBz2,由于 RB 处满足该行该列为 0 所以不产生贡献,所以就变成了 RAz,然后再进行消元。然后我们不断这样做,直到 Bi,i0,或者乘的 z 的个数 >n

https://qoj.ac/submission/368908

范德蒙德行列式

考虑方阵 ai,j=xij0i,j<n,那么其行列式为 0i<j<n(xjxi)

可以归纳得证。

神秘题 1

(忘了出处的模拟赛)给定常数 c,矩阵 a 满足对于 i=jai,j=1ijai,j=c×[ij],求其行列式。n1011

注意到一个下三角全为 c,所以考虑直接差分,ai,j=ai,jai1,j,得到一个上海森堡阵。然后我们直接 DP,得到 fi=j<ifj1(c1)ij(1)ijcaj,i+fi1(1c),令 hi=fi(c1)i(1)i,那么有 hi=j<icaj,ihj1+hi1。令 gi=hihi1,那么 gi=j<icaj,ihj1,带入题目中的矩阵得到 gi=cj<i([ji][j1i])hj1=c(hi2j<i1[ji]gj)=cji,j<i1gj,可以发现 g[0,c,c,] 的迪利克雷逆,所以直接杜教筛即可。

神秘题 2

目前隐藏

本文作者:LarsWerner

本文链接:https://www.cnblogs.com/TetrisCandy/p/18100030

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   LarsWerner  阅读(252)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起