1.题目相关
- 标签:
Purfer编码
- 题目地址:http://www.lydsy.com/JudgeOnline/problem.php?id=1005
- 题目大意:中文题。
2.思路
- 请先看大神博客做一个大致的了解。
本蒟蒻主要来解释一下。其实上面的博客已经讲得很清楚了。
sum=∑i=1cnt(d[i]−1)
- 记度数是有限制的节点的个数是 cnt 。
sum 代表这些有限制的节点的编号在 purfer 序列中出现的次数之和。
Csumn−2×sum!∏cnti=1(d[i]−1)!
- 将这 sum 个有限制的节点的编号插入 n-2 个空格中,并全排列。
Csumn−2×sum!∏cnti=1(d[i]−1)!×(n−cnt)n−2−sum
- 将剩下的 n-cnt 个无限制的节点插入剩余的 n-2-sum 个空格中。
(n−2)!(n−2−sum)!×∏cnti=1(d[i]−1)!×(n−cnt)n−2−sum
- 最后化简得到上述式子。
之后就暴力的消去质因子,最后高精度输出。
另外无解的情况就是 sum>n−2 。