結果
問題 |
No.3214 small square
|
ユーザー |
![]() |
提出日時 | 2025-07-25 23:08:10 |
言語 | PyPy3 (7.3.15) |
結果 |
RE
|
実行時間 | - |
コード長 | 761 bytes |
コンパイル時間 | 400 ms |
コンパイル使用メモリ | 83,032 KB |
実行使用メモリ | 67,772 KB |
最終ジャッジ日時 | 2025-07-25 23:08:16 |
合計ジャッジ時間 | 5,396 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | RE * 3 |
other | RE * 40 |
ソースコード
from atcoder import lazysegtree import bisect N,A=map(int,input().split()) inf = 10**18 lst = lazysegtree.LazySegTree( op = lambda x, y: max(x, y), e = -inf, mapping = lambda f, x: f + x, composition = lambda f, g: f + g, id_ = 0, v = [0] * (N) ) Ys = [] d = [] for _ in range(N): x,y,v=map(int,input().split()) Ys.append(y) d.append((x,1, y, v)) d.append((x+A,2, y, v)) Ys.sort() d.sort() ans = 0 for x,n,y,v in d: left = bisect.bisect_left(Ys, y - A) right = bisect.bisect_right(Ys, y) #print(left, right, v) if n == 1: lst.apply(left, right, v) else: lst.apply(left, right, -v) #print([lst.get(i) for i in range(len(Ys))]) ans = max(ans, lst.prod(0, len(Ys))) print(ans)