Find all possible combinations of k numbers that add up to a number n, given that only numbers from 1 to 9 can be used and each combination should be a unique set of numbers.
Ensure that numbers within the set are sorted in ascending order.
Example 1:
Input: k = 3, n = 7
Output:
[[1,2,4]]
Example 2:
Input: k = 3, n = 9
Output:
[[1,2,6], [1,3,5], [2,3,4]]
Solution:
Using recursion and backtrack.
There are usually two ways of using recursion. Here, I call forward pass and backward build-up, which stands for how the final results are produced during recursion.
For forward pass, the recursive function does not return any results. Instead, results are gradually generated in each recursion that is passed down. We pass intermediate results as reference during recursion.
Code:
Code:
No comments:
Post a Comment