結果
問題 |
No.370 道路の掃除
|
ユーザー |
![]() |
提出日時 | 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
ソースコード
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