結果

問題 No.45 回転寿司
ユーザー yozayoza
提出日時 2015-03-31 23:31:06
言語 Nim
(2.0.2)
結果
CE  
(最新)
AC  
(最初)
実行時間 -
コード長 361 bytes
コンパイル時間 821 ms
コンパイル使用メモリ 65,164 KB
最終ジャッジ日時 2024-04-27 02:07:15
合計ジャッジ時間 1,514 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
/home/judge/data/code/Main.nim(14, 14) Error: type mismatch
Expression: max(dp[i - 3] + vSeq[i], dp[i - 2] + vSeq[i], dp[i - 1])
  [1] dp[i - 3] + vSeq[i]: int
  [2] dp[i - 2] + vSeq[i]: int
  [3] dp[i - 1]: int

Expected one of (first mismatch at [position]):
[1] proc max(x, y: float32): float32
[1] proc max(x, y: float64): float64
[1] proc max(x, y: int16): int16
[1] proc max(x, y: int32): int32
[1] proc max(x, y: int8): int8
[1] proc max[T](x: openArray[T]): T
[3] proc max(x, y: int): int
[3] proc max(x, y: int64): int64
[3] proc max[T: not SomeFloat](x, y: T): T

ソースコード

diff #

import strutils, sequtils, algorithm, math

var
  n = readLine(stdin).parseInt()
  vSeq = readLine(stdin).split(' ').map(parseInt)
  dp = newSeq[int](1002)

dp[0] = vSeq[0]
if n > 1:
  dp[1] = vSeq[1]
if n > 2:
  dp[2] = max(dp[0] + vSeq[2], dp[1])
for i in countup(3, n - 1):
  dp[i] = max(dp[i - 3] + vSeq[i], dp[i - 2] + vSeq[i], dp[i - 1])

echo(dp[n - 1])
0