結果
| 問題 |
No.2891 Mint
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2024-07-05 14:24:10 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 105 ms / 2,000 ms |
| コード長 | 369 bytes |
| コンパイル時間 | 384 ms |
| コンパイル使用メモリ | 81,912 KB |
| 実行使用メモリ | 75,264 KB |
| 最終ジャッジ日時 | 2024-07-05 14:24:27 |
| 合計ジャッジ時間 | 5,440 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 54 |
ソースコード
from math import isqrt
mod = 998244353
n,m = map(int, input().split())
k = isqrt(m)
ans = 0
for i in range(1, min(n+1, k+1)):
ans += (m % i)
ans %= mod
for d in range(0, m//k+1):
r = n+1 if d == 0 else min(m // d + 1, n+1)
l = max(m // (d+1) + 1, k+1)
if r <= l: continue
ans += m * (r-l) - (r-l) * (l+r-1) // 2 * d
ans %= mod
print(ans)