此定理说明用n-1条边将n个一致的顶点连接起来的连通图的个数为n^(n-2),也可以这样理解,将n个城市连接起来的树状公路网络有n^(n-2)种方案。所谓树状,指的是用n-1条边将n个顶点构成一个连通图。当然,建造一个树状的公路网络将n个城市连接起来,应求其中长度最短、造价最省的一种,或效益最大的一种。Cayley定理只是说明可能方案的数目.
1 #include<iostream> 2 using namespace std; 3 #define N 10003 4 int main() 5 { 6 int t,i,n; 7 for(cin>>t;t--;) 8 { 9 cin>>n; 10 int a=1,b=n-2; 11 while(b) 12 { 13 if(b&1) 14 a=a*n%N; 15 b>>=1; 16 n=n*n%N; 17 } 18 cout<<a<<endl; 19 } 20 return 0; 21 }