結果

問題 No.3178 free sort
ユーザー K2
提出日時 2025-06-13 22:46:57
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
RE  
実行時間 -
コード長 536 bytes
コンパイル時間 337 ms
コンパイル使用メモリ 12,288 KB
実行使用メモリ 12,988 KB
最終ジャッジ日時 2025-06-13 22:47:07
合計ジャッジ時間 9,428 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 5
other RE * 40
権限があれば一括ダウンロードができます

ソースコード

diff #

from functools import cache
MOD = 998244353
@cache
def fact(n):
    if n == 0:
        return 1
    return n * fact(n - 1) % 998244353

@cache
def fact_inv(n):
    return pow(fact(n), MOD - 2, MOD)

N = input()
L = len(N)
cnt = [0] * 10

for n in N:
    cnt[int(n)] += 1

ans = fact(L)
for c in cnt:
    ans = ans * fact_inv(c) % MOD

if cnt[0] > 0:
    bad_ans = fact(L - 1)
    bad_ans = bad_ans * fact_inv(cnt[0]-1) % MOD
    for c in cnt[1:]:
        bad_ans = bad_ans * fact_inv(c) % MOD
    ans = (ans - bad_ans) % MOD

print(ans)
0