leetcode 216 組合總和 III

2021-10-01 06:26:53 字數 876 閱讀 4196

找出所有相加之和為 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

; # 因為只能用1

-9的數字,且每個字只能用一次,所以用乙個一維陣列對應九個數字,每個數字的次數為1

int index=

1; # 該變數用於避免在遞迴回溯的時候出現重複值

public

: vectorint>>

combinationsum3

(int k,

int n)};

function

(k,n,num,a,index)

;return nums;

}void

function

(int k,

int n, vector<

int> num,

int*a,

int index) # 遞迴回溯

if(k==

0) # 如果k=

0,則停止迭代

for(

int i=index;i<=9;

++i) # 遍歷每個數字,同時用index初始化i,每一次迭代只能做比當前索引更大的索引對應的值,這樣可以避免出現重複

}}};

LeetCode 216 組合總和 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 方案...

LeetCode 216 組合總和 III

題目描述 找出所有相加之和為 n 的 k 個數的組合。組合中只允許含有 1 9 的正整數,並且每種組合中不存在重複的數字。說明 所有數字都是正整數。解集不能包含重複的組合。輸入 4,1,0,3,10 7,3,2,3,11 輸出 0,1,9,16,100 4,9,9,49,121 題意 題目描述 題解...

leetcode 216 組合總和 III

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