det(A)=σ∈Sn∑sgn(σ)i=1∏nAi,σ(i)
其中sgn(σ)=(−1)N(σ)
N(σ)是逆序數對數或將該排列排好所需的對換數
(兩者奇偶性相同)
高斯消去
void Gauss(double A[509][509],ll N)
{
ll i,j,k,r;
for(i = 0;i < N;i++)
{
r = i;
for(j = i+1;j < N;j++) if(abs(A[j][i]) > abs(A[r][i])) r = j;
if(r != i)
{
for(j = 0;j < N;j++)
{
swap(A[r][j],A[i][j]);
}
}
for(k = i+1;k < N;k++)
{
double f = A[k][i]/A[i][i];
for(j = i;j < N;j++) A[k][j] -= f*A[i][j];
}
}
}
複雜度?
1.求行列式
- det(A)=0⇔A可逆
2.解(多元)一次方程組
3. 求秩(rank)
- 行秩 = 列秩
- rank(A)=n⇔det(A)=0
4.求反矩陣
T(G)i,j=⎩⎨⎧0xi,j−xi,jif(vi,vj)∈/E(G)if(vi,vj)∈E(G) and i<jif(vi,vj)∈E(G) and i>j
G有完美匹配⇔det(T(G))=0
Try Try see.
用一堆有向環去覆蓋一個無向圖,使得每個頂點恰在一個環中。
可以用一個排列p表示,其中i=pi,且(i,pi)∈E(G)
3 4 1 2
det(T)=σ∈Sn∑sgn(σ)∏i=1nTi,σ(i)
考慮非零項
有機?
無機?
det(T(G))=0⇔G有完美匹配
奇環覆蓋不會對det有貢獻
G有完美匹配⇔G有無奇環覆蓋
若P是一個有n個變數、最大度數為d的多項式,若從集合S中隨機取(r1,r2,⋯,rn),則
A(S1,S2)代表刪掉S1中的行和S2中的列所得到的新矩陣
A(S1,S2)代表留下S1中的行和S2中的列所得到的新矩陣
斜對稱矩陣
一矩陣S,若−S=ST,則稱S為斜對稱矩陣
Tutte Matrix就是
Ti,j−1=0⇔G−(vi,vj)有完美匹配
A−1=adj(A)/det(A)
(adj(A))i,j=(−1)i+jdet(Aj,i)
A:任意可逆矩陣
S : 斜對稱矩陣
T: Tutte Matrix
det(Si,j)=0⇔det(S(i,j),(i,j))=0(S可逆)
rank(S)是偶數
S是n×n且n是奇數⇒det(S)=0
可以找到S′=S(i1,i2...),(i1,i2...),使det(S′)=0且rank(S′)=rank(S)
B−1=B^−u^v^T/a^
O(N3)
一張圖最大匹配的大小是rank(T(G))/2
可以找到S′=S(i1,i2...),(i1,i2...),使det(S′)=0且rank(S′)=rank(S)
兩人玩遊戲,每次將棋子從圖上的一個節點移到相鄰且未走過的節點上,不可走者輸。哪些節點先手必勝?