[39] 组合总和

链接: 组合总和

class Solution:
    def combinationSum(self, candidates: List[int], target: int) -> List[List[int]]:
        res = []
        self.dfs(candidates, target, [], res, 0)
        return res
    
    def dfs(self, candidates, target, path, ans, begin):
        if target == 0:
            ans.append(path)
            return
        
        for i in range(begin, len(candidates)):
            num = candidates[i]
            if num <= target:
                self.dfs(candidates, target-num, path+[num], ans, i+1)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容