結果
問題 |
No.844 split game
|
ユーザー |
![]() |
提出日時 | 2019-07-07 21:36:32 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 223 ms / 2,000 ms |
コード長 | 489 bytes |
コンパイル時間 | 233 ms |
コンパイル使用メモリ | 82,448 KB |
実行使用メモリ | 96,644 KB |
最終ジャッジ日時 | 2024-10-05 12:09:00 |
合計ジャッジ時間 | 8,996 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 56 |
ソースコード
import collections n, m, a = map(int, input().split()) e = collections.defaultdict(list) for _ in range(m): l, r, p = map(int, input().split()) e[r].append((l - 1, p)) dp = [-float('inf')] * (n + 1) dp[0] = 0 maximum = 0 for r in range(1, n + 1): dp[r] = max(dp[r], maximum - a) for l, p in e[r]: if r == n: dp[r] = max(dp[r], dp[l] + p) else: dp[r] = max(dp[r], dp[l] + p - a) maximum = max(maximum, dp[r]) print(maximum)