結果
| 問題 |
No.844 split game
|
| コンテスト | |
| ユーザー |
6soukiti29
|
| 提出日時 | 2019-06-28 22:39:46 |
| 言語 | Nim (2.2.0) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 621 bytes |
| コンパイル時間 | 1,365 ms |
| コンパイル使用メモリ | 65,044 KB |
| 最終ジャッジ日時 | 2024-07-02 05:00:29 |
| 合計ジャッジ時間 | 2,253 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/home/judge/data/code/Main.nim(5, 33) Error: type mismatch: got 'seq[int]' for 'map(split(readLine(stdin), {' ', '\t', '\v', '\r', '\n', '\f'}, -1), parseInt)' but expected 'tuple'
ソースコード
import sequtils,strutils,algorithm
var
N,M,A : int
dp : array[-1..100010, array[2,int]]
(N, M, A) = stdin.readline.split.map(parseInt)
type
t = tuple[l, r, p : int]
var ts = newSeq[t](0)
var l, r, p : int
for m in 1..M:
(l, r, p) = stdin.readline.split.map(parseInt)
ts.add((l, r, p))
ts = ts.sortedByIt(it.r)
int p = 0
for i in 1..N:
dp[i + 1][0] = max(dp[i][0], dp[i][1])
dp[i + 1][1] = max(dp[i][0], dp[i][1]) - A
while p < M and ts[p].r == i:
var a = ts[p]
dp[i + 1][1] = max(dp[a.l][1] + a.p - A, dp[i + 1][1])
p += 1
echo max(dp[N + 1][0],dp[N + 1][1] + A)
6soukiti29