洛谷P2624 [HNOI2008]明明的烦恼

题目描述

题解

来补一补 $ ext{purfer}$ 序。

可以考虑每次选择编号最小的叶子,然后删掉并且在序列中新增加与它连边的节点。这样会得到一个长度为 $n-2$ 的序列。

考虑如何将一个 $n-2$ 的序列变成一棵树。首先我们可以得到每个点的度为序列中出现次数 $+1$ ,然后我们每次选择度数为 $1$ 中编号最小的点与当前序列位置的节点相连,并且两个点的度都 $-1$ ,这样我们就可以得到那棵树。

对于这题来说,考虑到度数有限制的节点在 $ ext{purfer}$ 序中出现次数为度数 $-1$ ,而序列中没填的位置可以填上度数未做要求的节点。所以设 $cnt$ 为度数有限制的节点数量, $sum=sum d[i]-1$ ,则答案为 $frac{(n-2)!}{(n-2-sum)!prod(d[i]-1)!}(n-cnt)^{n-2-sum}$ 。

由于有高精代码就被我咕掉啦。

原文地址:https://www.cnblogs.com/xjqxjq/p/12451887.html