AcWing 3195. 第0次csp认证 题目4 有趣的数
原题链接
中等
作者:
Misty.
,
2023-12-01 19:16:39
,
所有人可见
,
阅读 42
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 1010;
int c[N][N];
const int mod=1e9+7;
typedef long long LL;
int main()
{
int n;
cin>>n;
for(int i=0;i<N;i++) //一定不要写成n
{
for(int j=0;j<=i;j++)
{
if(i==j||j==0||i==0) c[i][j]=1;
else c[i][j]=(c[i-1][j]+c[i-1][j-1])%mod;
}
}
int res=0;
for(int i=2;i<=n-2;i++) //选i个位置给01 剩下的给23
{
res=(res+(LL)c[n-1][i]*(i-1)*(n-i-1))%mod; //i个位置里最多有几个0,因为首位不能为0,所以是c[n-1]
}
cout<<res;
return 0;
}