結果
問題 | No.2875 What is My Rank? |
ユーザー |
![]() |
提出日時 | 2024-09-06 23:15:01 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 726 bytes |
コンパイル時間 | 238 ms |
コンパイル使用メモリ | 82,712 KB |
実行使用メモリ | 80,348 KB |
最終ジャッジ日時 | 2024-09-06 23:15:17 |
合計ジャッジ時間 | 9,542 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 5 WA * 27 |
ソースコード
import sysinput = sys.stdin.readlineN = int(input())L, R = [0] * N, [0] * Ninv = 1mod = 998244353for i in range(N):L[i], R[i] = map(int, input().split())inv *= pow(R[i] - L[i] + 1, mod - 2, mod)inv %= moddef Gauss(n):return n * (n + 1) // 2ans = 1for i in range(1, N):l0, r0 = L[0], R[0]l1, r1 = L[i], R[i]temp = 0if r0 < l1:ans += 1elif l0 > r1:passelse:if l0 < l1:temp += (l1 - l0) * (r1 - l1 + 1)l0 = l1if r0 > r1:r0 = r1temp += Gauss(r1 - l0) - Gauss(r1 - r0 - 1)ans += temp * pow((r0 - l0 + 1) * (r1 - l1 + 1), mod - 2, mod)ans %= modprint(ans % mod)