Description:
无根树计数。
Solution:
prufer
p
r
u
f
e
r
序列一共有
n−2
n
−
2
个位置,每个位置有
n
n
个选择,所以一共有种方案。每种方案可以
(n−1)!
(
n
−
1
)
!
种方案连边,所以答案是
nn−2∗(n−1)!
n
n
−
2
∗
(
n
−
1
)
!
。
#include <bits/stdc++.h>
using namespace std;
const int P = 9999991;
int n;
long long ans = 1;
int main() {
scanf("%d", &n);
for(int i = 1; i < n - 1; ++i) {
ans = ans * n % P;
}
for(int i = 1; i < n; ++i) {
ans = ans * i % P;
}
printf("%lld\n", ans);
return 0;
}