組合數學

#define mod 998244353
#define ll long long
using namespace std;
ll fac[maxn],inv[maxn],dp[maxn];int a[maxn];
void Init()
{
    fac[0]=inv[0]=inv[1]=1;
    for(int i=1;i<maxn;i++)fac[i]=1ll*fac[i-1]*i%mod;
    for(int i=2;i<maxn;i++)inv[i]=1ll*(mod-mod/i)*inv[mod%i]%mod;
    for(int i=1;i<maxn;i++)inv[i]=1ll*inv[i-1]*inv[i]%mod;
}
ll calc(int n,int m)
{
    if(m<0||m>n)return 0;
    return 1ll*fac[n]*inv[m]%mod*inv[n-m]%mod;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章