def countChange
(money
: Int, coins
: List
[Int
]): Int
= { def countChange
_(money
: Int, coins
: List
[Int
]): Int
= { case _ => countChange
(money, coins.
tail) + countChange
_(money - coins.
head, coins
) }
}
}
countChange_(money, coins)
}
println(countChange(20, List(1, 2, 5, 10)))
}
b2JqZWN0IE1haW4gZXh0ZW5kcyBBcHAgewogIGRlZiBjb3VudENoYW5nZShtb25leTogSW50LCBjb2luczogTGlzdFtJbnRdKTogSW50ID0gewogICAgZGVmIGNvdW50Q2hhbmdlXyhtb25leTogSW50LCBjb2luczogTGlzdFtJbnRdKTogSW50ID0gewogICAgICBpZiAoY29pbnMuaXNFbXB0eSkgMAogICAgICBlbHNlIHsKICAgICAgICBtb25leSBjb21wYXJlIDAgbWF0Y2ggewogICAgICAgICAgY2FzZSAwID0+IDEKICAgICAgICAgIGNhc2UgLTEgPT4gMAogICAgICAgICAgY2FzZSBfID0+IGNvdW50Q2hhbmdlKG1vbmV5LCBjb2lucy50YWlsKSArIGNvdW50Q2hhbmdlXyhtb25leSAtIGNvaW5zLmhlYWQsIGNvaW5zKQogICAgICAgIH0KICAgICAgfQogICAgfQogICAgY291bnRDaGFuZ2VfKG1vbmV5LCBjb2lucykKICB9CiAgCiAgcHJpbnRsbihjb3VudENoYW5nZSgyMCwgTGlzdCgxLCAyLCA1LCAxMCkpKQp9