给定一个无重复元素的整数数组 candidates 和一个目标整数 target,找出 candidates 中可以使数字和为 target 的所有不同组合,并以任意顺序输出。
candidates 中的同一个数字可以被无限制重复选取。如果至少一个数字的被选数量不同,则两种组合视为不同组合。
保证不同组合的数量少于 150 个。
1 <= candidates.length <= 302 <= candidates[i] <= 40candidates 的所有元素 互不相同1 <= target <= 40n 和 target,分别表示数组的长度和目标值。n 个整数,表示数组 candidates 中的元素,元素互不相同。4 7
2 3 6 7
2 2 3
7
3 8
2 3 5
2 2 2 2
2 3 3
3 5
1 1
2