結果

問題 No.370 道路の掃除
ユーザー TANIGUCHI Kousuke
提出日時 2015-10-05 23:03:27
言語 Ruby
(3.4.1)
結果
WA  
実行時間 -
コード長 344 bytes
コンパイル時間 102 ms
コンパイル使用メモリ 7,424 KB
実行使用メモリ 12,416 KB
最終ジャッジ日時 2024-07-20 01:13:14
合計ジャッジ時間 4,440 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 30 WA * 4
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

INF = 10 ** 9
n,m = gets.split.map(&:to_i)
d = m.times.map { gets.to_i }
d.push(0)
a = d.select {|v| v >= 0 }.sort
b = d.select {|v| v <= 0 }.map {|v| v.abs }.sort

dp = Array.new(n+1,INF)

(0..n).each do |i|
    j = n - i
    if i < a.size && j < b.size
        dp[i] = a[i] < b[j] ? a[i] * 2 + b[j] : a[i] + b[j] * 2
    end
end

puts dp.min
0