1. 程式人生 > >競賽圖強連通分量大小冪和計數 - 組合計數 - 多項式

競賽圖強連通分量大小冪和計數 - 組合計數 - 多項式

題目大意:求所有 n n 個點帶標號競賽圖的強連通分量大小的 k k 次方之和的和,對 9982443535

9982443535 模數取模。 n 1 0 5 , k
998244352 n\le10^5,k\le 998244352

題解:
競賽圖縮點後拓撲序唯一(其實是鏈狀結構然後剩下的兩端不在同一個強連通分量裡面的邊的方向是確定的)。
g n
g_n
表示答案, f n f_n 表示 n n 個點的能夠縮成一個點的競賽圖數量, h n = 2 ( n 2 ) h_n=2^{\binom{n}{2}} 就是圖的總數。
那麼求 g g 顯然是,你列舉拓撲序最後一坨點的大小,欽定它們是一個 S C C SCC
g n = i = 1 n ( n i ) ( h n i i k + g n i ) f i g_n=\sum_{i=1}^n \binom ni \left(h_{n-i}i^k+g_{n-i}\right)f_i
f f 更簡單,用總數減去不合法的即可:
f n = h n i = 1 n 1 ( n i ) h n i f i f_n=h_n-\sum_{i=1}^{n-1}\binom{n}{i}h_{n-i}f_i
這樣就可以做到 O ( n 2 ) O\left(n^2\right)
接下來開始多項式的套路:
首先關於 f f ,有:
h n = i = 1 n ( n i ) f i h n i = i = 0 n ( n i ) f i h n i + [ n = = 0 ] h_n=\sum_{i=1}^n\binom nif_ih_{n-i}=\sum_{i=0}^n\binom nif_ih_{n-i}+[n==0] 並欽定 f 0 = 0 f_0=0
那麼令:
H ( x ) = i 0 h i i ! x i , F ( x ) = i 1 f i i ! x i H(x)=\sum_{i\geq 0}\frac {h_i}{i!}x^i,F(x)=\sum_{i\geq1}\frac{f_i}{i!}x^i
那麼 H = F H + 1 , F = 1 H 1 H=FH+1,F=1-H^{-1}
然後由之前的式子,令:
G ( x ) = i 1 g i i ! x i , T ( x ) = i 1 f i i k i ! x i G(x)=\sum_{i\geq1}\frac{g_i}{i!}x^i,T(x)=\sum_{i\geq1}\frac{f_ii^k}{i!}x^i
則: G = H T + G F , ( 1 F ) G = H T , G = H T 1 F = H T H 1 = H 2 T G=HT+GF,(1-F)G=HT,G=\frac{HT}{1-F}=\frac{HT}{H^{-1}}=H^2T