I got you!

# Problem:

The same number may be chosen from `candidates` an unlimited number of times. Two combinations are unique if the frequency of at least one of the chosen numbers is different.

It is guaranteed that the number of unique combinations that sum up to `target` is less than `150` combinations for the given input.

Example 1:

`Input: candidates = [2,3,6,7], target = 7Output: [[2,2,3],[7]]Explanation:2 and 3 are candidates, and 2 + 2 + 3 = 7. Note that 2 can be used multiple times.7 is a candidate, and 7 = 7.These are the only two combinations.`

Example 2:

`Input: candidates = [2,3,5], target = 8Output: [[2,2,2,2],[2,3,3],[3,5]]`

Example 3:

`Input: candidates = [2], target = 1Output: []`

Constraints:

• `1 <= candidates.length <= 30`
• `1 <= candidates[i] <= 200`
• All elements of `candidates` are distinct.
• `1 <= target <= 500`

# Solution:

## Explanation —

We iterate through the array candidates and call our dfs method recursively.

At each step, we have two choices to make. The first choice is to add the current element to our current subset curr, or to not add anything at all.

The base case of the recursion is when either a valid subset is found, in which case we add it to our result, or if our search exhausts or the sum is overreached, in both of which cases we return from the current function.

The curr array is updated accordingly and so are the parameters of the recursive dfs call.

Finally, we call our backtracking function and return the result.

## Time and Space Complexity —

Also, the space complexity will be the same because of the recursion stack.

Thus, if n is the length of the array candidates, and t is the target value,

Time Complexity: O(2^t)

Space Complexity: O(2^t)

Feel free to ask any related questions in the comment section or the links provided down below.

# I don’t have friends:

Connect with me on:

GitHub

Instagram (I know. Very professional)

Jai Shri Ram 🙏

--

--

## More from Palash Sharma

A student of science | palashsharma891@gmail.com | https://github.com/palashsharma891 | https://www.linkedin.com/in/palashsharma891/