結果
| 問題 |
No.4 おもりと天秤
|
| コンテスト | |
| ユーザー |
TANIGUCHI Kousuke
|
| 提出日時 | 2015-06-01 18:10:07 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 521 ms / 5,000 ms |
| コード長 | 609 bytes |
| コンパイル時間 | 189 ms |
| コンパイル使用メモリ | 7,552 KB |
| 実行使用メモリ | 16,128 KB |
| 最終ジャッジ日時 | 2024-06-26 09:12:24 |
| 合計ジャッジ時間 | 5,385 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 23 |
コンパイルメッセージ
Main.rb:18: warning: assigned but unused variable - n Syntax OK
ソースコード
# Here your code !
def solve(w, t)
dp = {}
dp[0] = Array.new(w.size + 1, 0)
(1..t).each do |j|
dp[j] = Array.new(w.size + 1, 0)
w.each_with_index do |k, i|
candiate = [dp[j][i], dp[j][i] + k ]
candiate.push(dp[j - k][i] + k) if j >= k
candiate.reject! {|v| v > j }
dp[j][i + 1] = candiate.max
end
end
dp[t].include?(t)
end
n = gets.to_i
w = gets.split.map(&:to_i)
total = w.inject(0, &:+)
if total.odd?
puts "impossible"
elsif solve(w,total/2)
puts "possible"
else
puts "impossible"
end
TANIGUCHI Kousuke