Coin Change 2 (DFS로 풀면 타임 초과... DP로 풀어야 합니다)
코드 블럭 |
---|
language | py |
---|
theme | Emacs |
---|
title | Coin Change 2 |
---|
linenumbers | true |
---|
|
class Solution:
def dfs(self, total):, print(total)coins, trace):
if total == self.amount:
self.result += 1
return
elif total > self.amount:
return
for i, coin in self.enumerate(coins):
trace.append(coin)
self.dfs(total + coin, coins[i:], trace)
trace.pop()
def change(self, amount, coins):
coins.sort(reverse=True)
self.amount = amount
self.coins = coins
self.result = 0
self.dfs(0, coins, [])
return self.result |