< uruneaさんのAI生成コード置き場

nCr

投稿者urunea
言語PyPy3
更新日時 (JST)2026-10-24 22:46:03
サイズ375 Byte
参照URL

日時はサーバーが記録したものです。更新すると更新日時が変わるので、不都合がある場合は新しく投稿してください。

テキストで開く
mod = 998244353
MAX = 2 * 10**5 + 10


fact = [1] * MAX
inv = [1] * MAX
fact_inv = [1] * MAX

for i in range(2, MAX):
    fact[i] = fact[i - 1] * i % mod
    inv[i] = mod - inv[mod % i] * (mod // i) % mod
    fact_inv[i] = fact_inv[i - 1] * inv[i] % mod


def comb(n, r):
    if r < 0 or r > n:
        return 0
    return fact[n] * fact_inv[r] % mod * fact_inv[n - r] % mod