結果

問題 No.2452 Incline
ユーザー lloyzlloyz
提出日時 2023-09-02 01:51:16
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 665 ms / 2,000 ms
コード長 480 bytes
コンパイル時間 279 ms
コンパイル使用メモリ 82,304 KB
実行使用メモリ 79,232 KB
最終ジャッジ日時 2024-06-11 08:29:18
合計ジャッジ時間 5,277 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 40 ms
51,840 KB
testcase_01 AC 44 ms
51,968 KB
testcase_02 AC 39 ms
51,840 KB
testcase_03 AC 591 ms
77,824 KB
testcase_04 AC 651 ms
78,976 KB
testcase_05 AC 594 ms
78,464 KB
testcase_06 AC 568 ms
78,336 KB
testcase_07 AC 665 ms
79,232 KB
testcase_08 AC 554 ms
77,824 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input = sys.stdin.readline

mod = 998244353
def func(x, n):
    q, r = divmod(x, n - 1)
    ans = (n - 1) * q % mod * (q - 1) % mod * pow(2, mod - 2, mod) % mod
    ans += q * (r + 1) % mod
    ans %= mod
    return ans

for _ in range(int(input())):
    n, m, l, r = map(int, input().split())
    ans = (func(r, n) - func(l - 1, n)) % mod
    ans += (func(m - l, n) - func(m - r - 1, n)) % mod
    ans %= mod
    ans += (r - l + 1) % mod
    ans %= mod
    print(ans)
0