首页 > 其他分享 >216. 组合总和 III

216. 组合总和 III

时间:2023-01-09 13:34:13浏览次数:56  
标签:216 组合 示例 int res path III 总和

216. 组合总和 III

难度中等605收藏分享切换为英文接收动态反馈

找出所有相加之和为 nk 个数的组合,且满足下列条件:

  • 只使用数字1到9
  • 每个数字 最多使用一次

返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。

示例 1:

输入: k = 3, n = 7
输出: [[1,2,4]]
解释:
1 + 2 + 4 = 7
没有其他符合的组合了。

示例 2:

输入: k = 3, n = 9
输出: [[1,2,6], [1,3,5], [2,3,4]]
解释:
1 + 2 + 6 = 9
1 + 3 + 5 = 9
2 + 3 + 4 = 9
没有其他符合的组合了。

示例 3:

输入: k = 4, n = 1
输出: []
解释: 不存在有效的组合。
在[1,9]范围内使用4个不同的数字,我们可以得到的最小和是1+2+3+4 = 10,因为10 > 1,没有有效的组合。

提示:

  • 2 <= k <= 9
  • 1 <= n <= 60

通过次数222,896

提交次数309,010

func combinationSum3(k int, n int) [][]int {
    path, res = make([]int, 0, k), make([][]int, 0)
    dfs(n,k,0,1)
    return res

}
var (
    res [][]int
    path []int
)

func dfs(tar int,k int,sum int,startindex int){
    if sum>tar{
        return
    }
    if len(path)==k{
        if sum==tar{
            tmp:=make([]int,k)
            copy(tmp, path)
            res = append(res, tmp)
        }
        return

    }
    for i:=startindex;i<=9;i++{
        sum+=i
        path=append(path,i)
        dfs(tar,k,sum,i+1)
        sum-=i
        path=path[:len(path)-1]
    }
}

标签:216,组合,示例,int,res,path,III,总和
From: https://www.cnblogs.com/suehoo/p/17036756.html

相关文章

  • 【LeeCode】377. 组合总和 Ⅳ
    【题目描述】给你一个由 不同 整数组成的数组 ​​nums​​​ ,和一个目标整数 ​​target​​​ 。请你从 ​​nums​​​ 中找出并返回总和为 ​​target​​ 的......
  • 力扣113 路径的总和 返回所有满足条件的路径
    力扣113路径的总和返回所有满足条件的路径题目:给你二叉树的根节点root和一个整数目标和targetSum,找出所有从根节点到叶子节点路径总和等于给定目标和的路径。叶......
  • 力扣112 路径的总和II
    力扣112路径的总和II题目:给你二叉树的根节点root和一个表示目标和的整数targetSum。判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标......
  • leetcode-599. 两个列表的最小索引总和
    599.两个列表的最小索引总和-力扣(Leetcode)刚开始的思路是搞两个map,但是性能比较差,只需要构建一个map然后遍历第二个list即可[!添加后可以过滤一些肯定不符合条件的]......
  • leetcode-557. 反转字符串中的单词 III
    557.反转字符串中的单词III-力扣(Leetcode)与代码[[leetcode-541.反转字符串II]]相关联,swapStrBytes函数,使用了上次的代码funcreverseWords(sstring)string{......
  • vulnhub靶场之HACKABLE: III
    准备:攻击机:虚拟机kali、本机win10。靶机:Hackable:III,下载地址:https://download.vulnhub.com/hackable/hackable3.ova,下载后直接vbox打开即可。知识点:lxd提权、hydra爆......
  • 代码随想录算法训练营Day25|216. 组合总和 III、17. 电话号码的字母组合
    代码随想录算法训练营Day25|216.组合总和III、17.电话号码的字母组合216.组合总和III216.组合总和III与「77.组合」类似,但区别在于题干要求的变化:只使用数字1......
  • Acwing 6. 多重背包问题 III
    单调队列优化法从公式入手来看是否还有可以改进的地方\(dp[i][j]=max(dp[i-1][j],dp[i-1][j-v]+w,dp[i-1][j-2*v]+2*w,...,dp[i-1][j-s_i*v]+s_i*w)\)我们......
  • 2019 TRIUMPH ROCKET III ROADSTER SERVICE LAMP RESET
    Background:A2019TRIUMPHROCKETIIIROADSTER,itsmaintenancetimeisup,thedashboardshowsawrenchformaintenancetips.PreparationPreparation: OBDS......
  • 在虚拟机中直接使用liveCD:lfslivecd-x86-6.3-r2160.iso
    1.环境虚拟机:vmware-6.5liveCD:lfslivecd-x86-6.3-r2160.iso2.安装参考:http://blogold.chinaunix.net/u/13265/showart.php?id=477122选择File->New->VirtualMac......