标签:
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)
Total Submission(s): 717 Accepted Submission(s): 296
1 #include<stdio.h> 2 #include<algorithm> 3 #include<iostream> 4 #include<string.h> 5 #include<queue> 6 #include<stack> 7 #include<set> 8 #include<math.h> 9 using namespace std; 10 typedef long long LL; 11 const int N=1e9+7; 12 LL dp[1000005]; 13 LL quick(LL n,LL m); 14 int main(void) 15 { 16 int i,j,k; 17 dp[1]=1; 18 dp[2]=2; 19 dp[3]=5; 20 for(i=4; i<=1000000; i++) 21 { 22 dp[i]=dp[i-1]*(4*i-2)%N; 23 dp[i]=dp[i]*quick((LL)(i+1),N-2)%N; 24 } 25 scanf("%d",&k); 26 int s; 27 int t; 28 for(s=1; s<=k; s++) 29 { 30 scanf("%d",&t); 31 printf("Case #%d:\n",s); 32 printf("%lld\n",dp[t]); 33 } 34 return 0; 35 } 36 LL quick(LL n,LL m) 37 { 38 LL ak=1; 39 while(m) 40 { 41 if(m&1) 42 { 43 ak=ak*n%N; 44 } 45 n=(n*n)%N; 46 m/=2; 47 } 48 return ak; 49 }
标签:
原文地址:http://www.cnblogs.com/zzuli2sjy/p/5573936.html