矩陣樹定理 HEOI2015 小Z的房間

2021-09-03 02:47:39 字數 736 閱讀 7153

傳送門

矩陣樹定理:一張圖的基爾霍夫矩陣即為其度數矩陣-鄰接矩陣,度數矩陣中d[i

][i]

d[i][i]

d[i][i

]為點i的度

一張圖的生成樹個數即為其基爾霍夫矩陣的行列式

code:

#include

#define int long long

#define n 90

#define mod 1000000000

using

namespace std;

int n,m,f[n]

[n];

int tot,map[n]

[n];

void

add(

int x,

int y)

intgauss()

ans=

(ans*f[i]

[i])

%mod;

}return

(ans+mod)

%mod;

}signed

main()

}for

(int i=

1;i<=n;i++

)for

(int j=

1;j<=m;j++

)printf

("%lld\n"

,gauss()

);return0;

}

HEOI2015 小Z的房間

其實是矩陣樹定理模板題。但是要注意不合法的情況預處理的時候設定成0,要不然計算行列式的時候有問題。直接跳過不合法情況,不給它建立新點就行了。如下 include include include include define mod 1000000000 using namespace std int...

HEOI2015 小L的白日夢

更好的閱讀體驗 本文參考了yyb大神的題解,並且加入了一些自己的看法 三個性質都可以和暴力拍上,所以應該是正確的 性質1 一定存在最優解每天不高興的概率是單調不增的 看著比較顯然 證明也比較容易,首先按不高興概率單調不增把每個專案排序,說人話就是令 a i ge a 根據期望線性性,當前期望為 e ...

HEOI2015 BZOJ4031 小Z的房間

description 你突然有了乙個大房子,房子裡面有一些房間。事實上,你的房子可以看做是乙個包含n m個格仔的格狀矩形,每個格仔是乙個房間或者是乙個柱子。在一開始的時候,相鄰的格仔之間都有牆隔著。你想要打通一些相鄰房間的牆,使得所有房間能夠互相到達。在此過程中,你不能把房子給打穿,或者打通柱子 ...