前言
PKUWC和NOIWC都考察了prufer序列,结果统统爆零
prufer序列就是有标号生成树对序列的映射
prufer序列生成
每次选择编号最小的叶子删掉,把叶子的父亲加入prufer序列,直到剩下2个点
set维护叶子,nlogn
prufer序列还原
用set维护没有在剩余prufer序列中的点,不断取出prufer序列首项A,和set中最小的编号连边。然后删除两个点。(如果A在剩下的prufer序列不存在了,就加入set)
摘自百度百科:
性质
来自:
https://www.cnblogs.com/zwfymqz/p/8869956.html
PKUWC数学第一题:
度数为3,3,2,2,1,1,1,1的有标号不同的树有多少个。(每个点的度数不明)
分配标号:8!/(2!*2!*3!*3!),然后利用性质4