一道规律题,找到规律就可以解出来找不到规律就很难解出来,虽然很难找,但是思考在过程中,会让思维更敏感,对这些规律更敏感,值得一写
AC代码:
#include<bits/stdc++.h>
using namespace std;
const int maxn=250000+5;
long long dp[maxn];
int main()
{
long long n,m;
scanf("%lld %lld",&n,&m);
dp[0]=dp[1]=1;
for(long long i=2;i<=n;i++)
{
dp[i]=((dp[i-1]%m)*(i%m))%m;
}
long long sum=0;
for(long long i=1;i<=n;i++)
{
sum+=(((dp[i]%m)*(dp[n-i+1]%m)%m)*((n-i+1)%m))%m;
}
printf("%lld\n",sum%m);
}