結果
問題 | No.23 技の選択 |
ユーザー | siman |
提出日時 | 2021-04-07 03:13:03 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 87 ms / 5,000 ms |
コード長 | 332 bytes |
コンパイル時間 | 360 ms |
コンパイル使用メモリ | 7,296 KB |
実行使用メモリ | 12,288 KB |
最終ジャッジ日時 | 2024-06-12 20:42:47 |
合計ジャッジ時間 | 4,755 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 33 |
コンパイルメッセージ
Syntax OK
ソースコード
H, A, D = gets.split.map(&:to_i) dp = Array.new(H + 1, Float::INFINITY) dp[0] = 0.0 1.upto(H) do |h| if h - A >= 0 dp[h] = dp[h - A] + 1.0 else dp[h] = dp[0] + 1.0 end if h - D >= 0 dp[h] = dp[h - D] + 1.5 if dp[h] > dp[h - D] + 1.5 else dp[h] = dp[0] + 1.5 if dp[h] > dp[0] + 1.5 end end puts dp[H]