結果

問題 No.2058 Binary String
ユーザー tktk_snsn
提出日時 2022-08-26 22:15:02
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 932 ms / 2,000 ms
コード長 509 bytes
コンパイル時間 102 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 26,368 KB
最終ジャッジ日時 2024-10-13 22:52:14
合計ジャッジ時間 14,686 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 23
権限があれば一括ダウンロードができます

ソースコード

diff #

mod = 998244353

Fsize = 2 * 10 ** 5 + 100
fact = [1] * (Fsize + Fsize + 5)
for i in range(2, Fsize+1):
    fact[i] = fact[i-1] * i % mod
fact[-Fsize] = pow(fact[Fsize], mod-2, mod)
for i in reversed(range(2, Fsize + 1)):
    fact[-i+1] = fact[-i] * i % mod


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


N, K = map(int, input().split())
ans = 0
for i in range(N):
    ans += pow(i, K, mod) * comb(N - 1, i) % mod
    ans %= mod
print(ans)
0