题目链接:http://codeforces.com/contest/1173/problem/D
赛场上弱爆了的小菜鸡(本人),怎么也没想到这道看起来近似于神仙计数/生成函数的题正解竟然如此简洁。
前提是得想明白一个显然的性质,那就是一棵子树在圆上会是一段连续区间。这个画一画图就可以想明白。
答案不需要考虑轮换对称(认真读题!!!)!然后就转换成了固定根节点在圆上的位置,然后求一棵树的近似于dfn序的序列有多少种(这里说近似,是因为子树的根不一定在子树连续区间的最前端,只有这点与常规dfn序不同)。那我们喜闻乐见地发现答案就是树上所有点的度数的阶乘(可理解为在每个子树根往下走儿子的顺序数*自己的位置数)乘在一起,再乘上n(根所在圆上的位置数)。
显然此题的代码太过简捷以至于并不需要放上来qwq……