1. 程式人生 > >Codeforces Gym 101933 K King's Colors

Codeforces Gym 101933 K King's Colors

題目分析

題目要求在樹上塗上恰好\(K\)種顏色的方案數。

\(f(k)\)表示恰好塗上\(k\)種顏色的方案數(答案即為\(f(K)\))。

\(g(k)\)表示至多塗上\(k\)種顏色的方案數。

顯然有:\(g(k)=\sum\limits_{i=1}^k\dbinom{k}{i}f(i)\)

那麼二項式反演後:
\(f(k)=\sum\limits_{i=1}^k(-1)^{k-i}\dbinom{k}{i}g(i)\)

考慮如何求\(g(i)\)

如果是序列上的問題,顯然就是\(i*(i-1)^{n-1}\),那麼樹上呢?

考慮一個節點是否有父節點,有則乘上\((i-1)\)

,否則乘上\(i\),與序列同理。

那麼答案就是
\(\sum\limits_{i=1}^K(-1)^{K-i}\binom{K}{i}i*(i-1)^{n-1}\)

就做完啦。