NC16732. 序列
描述
输入描述
一个整数 表示n (1<= n <= 1e3)
输出描述
一个整数 表示答案模109+7
示例1
输入:
5
输出:
7
C++11(clang++ 3.9) 解法, 执行用时: 6ms, 内存消耗: 4324K, 提交时间: 2018-06-22 19:07:41
#include<bits/stdc++.h> using namespace std; #define ll long long #define P 1000000007 int n,c[1005][1005],i,j,ans; int main() { cin>>n; for(i=c[0][0]=1;i<n;i++)for(j=c[i][0]=1;j<=i;j++)c[i][j]=(c[i-1][j]+c[i-1][j-1])%P; for(i=0;i<<1<n;i+=2)ans=(ans+(ll)c[n-1][i<<1]*c[i<<1][i])%P; cout<<ans<<endl; return 0; }
Python3(3.5.2) 解法, 执行用时: 60ms, 内存消耗: 3664K, 提交时间: 2018-06-23 15:28:26
import math mod = 1000000007 def c(m, n): return math.factorial(m) // math.factorial(n) // math.factorial(m - n) % mod num = int(input()) ans = 0 n = num - 1 i = 0 while i <= n // 2: ans = (ans + c(n, i) * c(n - i, i)) % mod i += 2 print(ans)