結果
| 問題 |
No.1858 Gorgeous Knapsack
|
| ユーザー |
siman
|
| 提出日時 | 2022-02-27 19:43:47 |
| 言語 | Ruby (3.4.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 334 bytes |
| コンパイル時間 | 41 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 19,488 KB |
| 最終ジャッジ日時 | 2024-07-05 19:04:24 |
| 合計ジャッジ時間 | 11,271 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 16 WA * 14 TLE * 1 -- * 6 |
コンパイルメッセージ
Syntax OK
ソースコード
N, M = gets.split.map(&:to_i)
J = N.times.map { gets.split.map(&:to_i) }
J.sort_by! { |v, w| -v }
dp = Array.new(M + 1, 0)
dp2 = Array.new(M + 1, 0)
J.each do |v, w|
(M - w).downto(0) do |i|
nw = i + w
if dp[nw] < (dp2[i] + v) * v
dp[nw] = (dp2[i] + v) * v
dp2[nw] = dp2[i] + v
end
end
end
puts dp.max
siman