結果
| 問題 | No.789 範囲の合計 |
| コンテスト | |
| ユーザー |
pasoconhoshii
|
| 提出日時 | 2019-02-11 22:12:38 |
| 言語 | Python3 (3.14.2 + numpy 2.4.0 + scipy 1.16.3) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 832 bytes |
| 記録 | |
| コンパイル時間 | 228 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 36,352 KB |
| 最終ジャッジ日時 | 2024-07-19 09:20:14 |
| 合計ジャッジ時間 | 2,956 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 2 TLE * 1 -- * 12 |
ソースコード
#!/mnt/c/Users/moiki/bash/env/bin/python
N = int(input())
Q = [ list(map(int, input().split())) for _ in range(N)]
from collections import defaultdict
from bisect import bisect_left, bisect_right, insort_left, insort_right
pairdic = defaultdict(int)
inf = float("inf")
ans = 0
idx_cnt = [(inf,inf)]
for q,x,y in Q:
if q == 0:
pairdic[x] += y
insort_left( idx_cnt, (x,y))
# idx_cnt.insert( bisect_left(
# idx_cnt = [ (idx, pairdic[idx]) for idx in pairdic.keys()]
# idx_cnt = sorted(idx_cnt)
if q == 1:
l,r = x,y
lidx = bisect_left( idx_cnt, (l,0))
ridx = bisect_right( idx_cnt, (r,inf))
#print(idx_cnt)
#print(lidx, ridx)
ans += sum( list(map(lambda x: x[1], idx_cnt))[lidx:ridx], 0)
# print("ans: ", ans)
print(ans)
pasoconhoshii