50,778
社区成员
发帖
与我相关
我的任务
分享
#include <iostream>
using namespace std;
typedef long long LL;
LL C(int a,int b)
{
LL k=1;
for (int i = 1; i <= b; i++) {
k = k * (a - i + 1) / i;
}
return k;
}
int main()
{
LL a[100]={0,0,1};
for(int i=3;i<=14;i++)
{
a[i]=(i-1)*(a[i-1]+a[i-2]);
}
cout<<C(28,14)*a[14];
return 0;
}
#include <iostream>
using namespace std;
typedef long long LL;
const int N=210,mod=1000000007;
LL dp[N][N][N];
int main()
{
int n,m;
cin>>n>>m;
dp[0][0][2]=1;
for(int i=0;i<=n;i++)
for(int j=0;j<=m;j++)
for(int k=0;k<=m;k++)
{
LL &v=dp[i][j][k];
if(i-1>=0&&k%2==0) v=(v+dp[i-1][j][k/2])%mod;
if(j) v=(v+dp[i][j-1][k+1])%mod;
}
cout<<dp[n][m-1][1]%mod;
return 0;
}