题目思路:
计算过程来自题解讨论区
q^-1是求出q的逆元,可以用费马小定理做
逆元详解我在这里看的 链接:
https://www.cnblogs.com/kongbursi-2292702937/p/10582258.html
代码:
#include<iostream>
using namespace std;
int const mod=998244353;
int f[2000005],n;
int qpow(int a,int b)
{
int ans=1;
while(b)
{
if(b&1)
ans=ans*a%mod;
b>>=1;
a=a*a%mod;
}
return ans;
}
int main()
{
f[0]=1;
for(int i=1;i<N;i++)
f[i]=1LL*f[i-1]*i%mod;
while(~scanf("%d",&n))
{
printf("%d\n",1LL*f[n]*f[n]%mod *qpow(f[2*n+1],mod-2)%mod);
}
return 0;
}