【BZOJ4766】文艺计算姬

【BZOJ4766】文艺计算姬

Matrix-Tree定理证明不会,用prufer序列

考虑构造prufer序列的过程。最后一对点肯定一个在(L),一个在(R)

剩余的点,每删一个(L)就会把一个(R)加入到序列中,因此共有(n-1)(R)点,(m-1)(L)点在序列中

然后把这些点扔到序列里,答案是(m^{n-1} cdot n^{m-1})

一开始想多了

为什么不用考虑(L)点和(R)点的相对顺序?为什么不会连同一部的边?

因为根据prufer构造树时,每次都把标号最小的未出现点(即叶子)挂上去,而二分图要求每次边的两个端点不在同一部,所以要取另一端的一个点,所以如果选定一些purfer序列里的点,每次放的(L/R)是固定的

代码不用贴了。

原文地址:https://www.cnblogs.com/RiverHamster/p/sol-bzoj4766.html