给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。

candidates 中的数字可以无限制重复被选取。

说明:

所有数字(包括 target)都是正整数。
解集不能包含重复的组合。 
示例 1:

输入: candidates = [2,3,6,7], target = 7,
所求解集为:
[
[7],
[2,2,3]
]
示例 2:

输入: candidates = [2,3,5], target = 8,
所求解集为:
[
  [2,2,2,2],
  [2,3,3],
  [3,5]
]

来源:力扣(LeetCode)

python3

class Solution:
    def combinationSum(self, candidates: List[int], target: int) -> List[List[int]]:
        def searchSum(candidates,target):
            res=[]
            for i in range(len(candidates)):
                val = candidates[i]
                if val <target:
                    ls=searchSum(candidates[i:],target-val)
                    if ls!=[]:
                        for ele in ls:
                            ele.append(val)
                    res=res+ls
                elif val==target:
                    res=res+[[val]]
            return res
        return searchSum(candidates,target) 

最新文章

  1. 第五章 springboot + mybatis(转载)
  2. 给ros安装arbotix simulator仿真环境
  3. 15、C#基础整理(递归)
  4. 实现百度地图导航Demo的语音播报功能
  5. 自定义UITableView的Seperator
  6. 二叉树中序遍历 (C语言实现)
  7. 【转】10分钟了解设计模式(C#)
  8. Js验证 :只能输入数字和小数点 验证是否是数字 js取float型小数点后两位
  9. Python 函数 切片 迭代 列表生成器
  10. 关于Oracle将小于1的数字to_char后丢掉0的解决办法
  11. bootstrap ch2清除浮动
  12. Scripting Languages 簡介
  13. 二、java三大特性--继承
  14. 给vmware虚拟机设置Ip,使用xshell远程连接Centos
  15. #iOS问题记录#UITableView加载后直接滑动倒最底部
  16. 洛谷 P4451 [国家集训队]整数的lqp拆分
  17. django中的@login_required
  18. go学习笔记-流程控制(if/else,for/range)
  19. python2.7入门---模块(Module)
  20. 41个Web开发者必须收藏的JavaScript实用技巧

热门文章

  1. 自动化运维工具ansible简单介绍
  2. 编译lineageos3
  3. jQuery HTML-设置
  4. SQL中的DQL查询语句
  5. AI加持的阿里云飞天大数据平台技术揭秘
  6. Python--字符编码、文字处理、函数
  7. sql存储过程循环实现事务
  8. element-ul 处理 组件内的弹出框close问题
  9. linux下关闭Oracle及关机
  10. 导入csv 到mysql数据库