把博客园图标替换成自己的图标
把博客园图标替换成自己的图标end

【BZOJ2467】[中山市选2010] 生成树(无话可说的SB题)

点此看题面

大致题意:\(n\)个五边形构成的五角形圈的生成树个数(五角形圈的定义见原题面的图,文字难以描述)。

\(SB\)

显然,一般而言,每个五边形中要恰好断开一条边,有\(5\)种方案。

但由于是生成树,就需要有一个五边形断开两条边,且其中一条必然是圈上的边(不然会导致不连通),因此这个特殊五边形有\(4\)种断边方案。

又因为这个特殊五边形有\(n\)种选择,所以总方案数为\(n\times 4\times 5^{n-1}\)

代码

#include<bits/stdc++.h>
#define Tp template<typename Ty>
#define Ts template<typename Ty,typename... Ar>
#define Reg register
#define RI Reg int
#define Con const
#define CI Con int&
#define I inline
#define W while
#define N 100
#define X 2007
using namespace std;
int n;I int QP(RI x,RI y) {RI t=1;W(y) y&1&&(t=t*x%X),x=x*x%X,y>>=1;return t;}
int main()
{
	RI Tt;scanf("%d",&Tt);W(Tt--) scanf("%d",&n),printf("%d\n",n*4*QP(5,n-1)%X);
	return 0;
}
posted @ 2020-06-02 17:41  TheLostWeak  阅读(110)  评论(0编辑  收藏  举报