結果
| 問題 | No.3424 Shooting Game |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-12-29 21:25:58 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 313 ms / 2,000 ms |
| コード長 | 558 bytes |
| 記録 | |
| コンパイル時間 | 240 ms |
| コンパイル使用メモリ | 83,020 KB |
| 実行使用メモリ | 87,416 KB |
| 最終ジャッジ日時 | 2026-01-11 17:21:11 |
| 合計ジャッジ時間 | 3,605 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 11 |
ソースコード
X=334334
N,T=map(int,input().split())
sc=[0]*X*2
for i in range(N):
L,R,P=map(int,input().split())
R+=1
L+=X
R+=X
while L<R:
if L%2==1:
sc[L]=max(sc[L],P)
L+=1
if R%2==1:
R-=1
sc[R]=max(sc[R],P)
L//=2
R//=2
for i in range(X,X*2):
now=i
while now>0:
sc[i]=max(sc[i],sc[now])
now//=2
sc=sc[X:]
dp=[0]*X
dp[0]=sc[0]
for i in range(1,T):
dp[i]=max(dp[i-1],sc[i])
for i in range(T,X):
dp[i]=max(dp[i-1],dp[i-T]+sc[i])
print(dp[-1])