目录
显示
题目链接
https://www.luogu.org/problem/P4981
题解
根据 prufer 序列的结论,我们可以知道 \(n\) 个节点的无根树个数为 \(n^{n-2}\)。
现在我们要求的是有根树的数量。因为每个节点都可以设置为根,答案显然是 \(n*n^{n-2}=n^{n-1}\)。
#include <iostream>
#include <algorithm>
#define MOD 1000000009
using namespace std;
long long fpow(long long a,long long b)
{
long long ans=1;
while(b)
{
if(b&1)ans=ans*a%MOD;
a=a*a%MOD;
b>>=1;
}
return ans;
}
int main()
{
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
cout<<fpow(n,n-1)<<endl;
}
return 0;
}