結果
| 問題 |
No.844 split game
|
| コンテスト | |
| ユーザー |
neterukun
|
| 提出日時 | 2019-06-28 22:31:07 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 686 bytes |
| コンパイル時間 | 201 ms |
| コンパイル使用メモリ | 82,304 KB |
| 実行使用メモリ | 91,776 KB |
| 最終ジャッジ日時 | 2024-07-02 04:56:31 |
| 合計ジャッジ時間 | 9,556 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 22 WA * 34 |
ソースコード
import sys
from operator import itemgetter
input = sys.stdin.readline
n, m, a = map(int, input().split())
info = [list(map(int, input().split())) for i in range(m)]
info = sorted(info, key = itemgetter(1)) + [[-1, -1, -1]]
dp = [0]*(n+1)
end = 0
max_dp = 0
for i in range(1, n + 1):
if info[end][1] == i:
while True:
if i == n:
dp[i] = max(dp[i], dp[info[end][0] - 1] + info[end][2])
else:
dp[i] = max(dp[i], dp[info[end][0] - 1] + info[end][2] - a)
end += 1
if info[end][1] != i:
break
max_dp = max(max_dp, dp[i])
else:
dp[i] = max_dp - a
print(max(dp))
neterukun