結果

問題 No.505 カードの数式2
ユーザー MaxMellon
提出日時 2017-07-03 04:33:37
言語 Ruby
(3.4.1)
結果
WA  
実行時間 -
コード長 452 bytes
コンパイル時間 73 ms
コンパイル使用メモリ 7,552 KB
実行使用メモリ 12,288 KB
最終ジャッジ日時 2024-10-05 09:52:58
合計ジャッジ時間 3,529 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 26 WA * 3
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

gets
arr = gets.chomp.split.map(&:to_i)

dp = {}
dp[0] = {}
dp[0][0] = arr[0]
dp[0][1] = arr[0]

def calc_min_and_max(arr, cur)
  r = []
  c = 0
  0.upto(1) do |i|
    r[c] = arr[i] + cur
    c += 1
    r[c] = arr[i] - cur
    c += 1
    r[c] = arr[i] * cur
    c += 1
    r[c] = arr[i] - cur
    c += 1
  end
  [r.max, r.min]
end

1.upto(arr.length - 1) do |i|
  dp[i] = {}
  dp[i] = calc_min_and_max(dp[i - 1], arr[i])
end

puts dp[arr.size - 1].max
0