結果

問題 No.115 遠足のおやつ
ユーザー mai
提出日時 2017-04-13 20:54:43
言語 Ruby
(3.4.1)
結果
AC  
実行時間 4,376 ms / 5,000 ms
コード長 419 bytes
コンパイル時間 128 ms
コンパイル使用メモリ 7,552 KB
実行使用メモリ 30,464 KB
最終ジャッジ日時 2024-07-18 12:59:20
合計ジャッジ時間 9,503 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 40
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def scan; gets.split.map(&:to_i); end

n,d,k = scan

@memo={}
def dfs(n,d,k)
    return d == 0 if k == 0
    return false if d <= 0
    return false if n <= 0
    
    key = [n,d,k]
    return false if @memo[key]
    
    n.downto(1){|coin|
        if dfs(coin-1,d-coin,k-1)
            printf "%d ",coin
            return true
        end
    }
    @memo[key] = true
    return false
end

puts "-1" unless dfs(n,d,k)
0