2020牛客暑期多校训练营(第一场)J题
#include<cstdio>
#include<cstdlib>
#define SF scanf
#define PF printf
typedef long long ll;
const int N=2000006;
const int P=998244353;
ll n,jc[N],dc[N];
ll fen(ll x){ //分数取模 fen(x)=(1/x)%P
ll r=1,t=x,y=P-2;
for(;y;y>>=1,t=t*t%P)if(y&1)r=r*t%P;
return r%P;
}
int main(){
jc[1]=1;
for(int i=2;i<=1000000;i++){
jc[i]=(jc[i-1]*(ll)i)%P;
}
dc[1]=1;
for(int i=2;i<=2000001;i++){
dc[i]=(dc[i-1]* fen((ll)i))%P;
}
while(SF("%d",&n)!=EOF){
PF("%lld\n",jc[n]*jc[n]%P*dc[(n<<1)+1]%P);
}
return 0;
} 


京公网安备 11010502036488号