結果
問題 |
No.1856 Mex Sum 2
|
ユーザー |
![]() |
提出日時 | 2025-04-24 12:27:22 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 909 bytes |
コンパイル時間 | 272 ms |
コンパイル使用メモリ | 82,280 KB |
実行使用メモリ | 108,040 KB |
最終ジャッジ日時 | 2025-04-24 12:29:13 |
合計ジャッジ時間 | 19,245 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 45 WA * 19 |
ソースコード
MOD = 998244353 def main(): import sys N, M = map(int, sys.stdin.readline().split()) max_m = min(N, M + 1) # Precompute binomial coefficients up to max_m comb = [[0] * (max_m + 1) for _ in range(max_m + 1)] comb[0][0] = 1 for m in range(1, max_m + 1): comb[m][0] = 1 for k in range(1, m + 1): comb[m][k] = (comb[m-1][k-1] + comb[m-1][k]) % MOD total = 0 for m in range(1, max_m + 1): sum_terms = 0 for k in range(0, m + 1): sign = 1 if k % 2 == 0 else MOD - 1 c = (comb[m][k] * sign) % MOD x = (2 * M + 1 - k) % MOD x_pow = pow(x, N, MOD) term = (c * x_pow) % MOD sum_terms = (sum_terms + term) % MOD contribution = (m * sum_terms) % MOD total = (total + contribution) % MOD print(total) if __name__ == "__main__": main()