組合總和 III

2021-10-09 09:00:10 字數 604 閱讀 2833

問題描述:

找出所有相加之和為 n 的 k 個數的組合。組合中只允許含有 1 - 9 的正整數,並且每種組合中不存在重複的數字。

說明:所有數字都是正整數。

解集不能包含重複的組合。

示例 1:

輸入: k = 3, n = 7

輸出: [[1,2,4]]

示例 2:

輸入: k = 3, n = 9

輸出: [[1,2,6], [1,3,5], [2,3,4]]

class

solution

if(val==n&&tmp.

size()

==k)

for(

int j=i;jsize()

;j++)}

vectorint>>

combinationsum3

(int k,

int n)

; vectorint>> res;

vector<

int> tmp;

dfs(nums,tmp,res,k,n,0,

0);return res;}}

;

組合總和III

找出所有相加之和為 n 的 k 個數的組合。組合中只允許含有 1 9 的正整數,並且每種組合中不存在重複的數字。說明 所有數字都是正整數。解集不能包含重複的組合。示例 1 輸入 k 3,n 7 輸出 1,2,4 示例 2 輸入 k 3,n 9 輸出 1,2,6 1,3,5 2,3,4 class s...

演算法 組合總和 III

題目 找出所有相加之和為 n 的 k 個數的組合。組合中只允許含有 1 9 的正整數,並且每種組合中不存在重複的數字。說明 所有數字都是正整數。解集不能包含重複的組合。示例 2 輸入 k 3,n 9 輸出 1,2,6 1,3,5 2,3,4 思路 又是一道組合,挺好的,書讀百遍其義自見,同型別的題多...

演算法題目 組合總和 III

思路 使用回溯 減枝來獲取組合,由於組合內不重複,並且為1 9的整數,解空間樹的如下圖所示 及 說明如下 class solution private void dfs list reslist,listcurlist,integer k,integer n,integer start 迴圈當前層 ...