結果

問題 No.1374 Absolute Game
コンテスト
ユーザー magurofly
提出日時 2021-02-05 22:16:33
言語 Ruby
(4.0.2)
コンパイル:
ruby -w -c _filename_
実行:
ruby _filename_
結果
WA  
実行時間 -
コード長 421 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 157 ms
コンパイル使用メモリ 8,704 KB
実行使用メモリ 1,307,692 KB
最終ジャッジ日時 2026-03-23 20:36:27
合計ジャッジ時間 5,094 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 5 WA * 1 MLE * 2 -- * 18
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #
raw source code

N = gets.to_i
c = gets.split.map(&:to_i).sort

dp = Array.new(N+1) { |l| x = []; x[l] = [0, 0]; x }
(1 .. N).each do |s|
    (0 .. N-s).each do |l|
        r = l + s
        b1, a1 = dp[l][r-1]
        b2, a2 = dp[l+1][r]
        a1 += c[r-1]
        a2 += c[l]
        dp[l][r] = [
            [a1, b1],
            [a2, b2],
            ].max_by { |(a, b)| a.abs - b.abs }
    end
end
a, b = dp[0][N]
puts a.abs - b.abs
0