Given an integer array with all positive numbers and no duplicates, find the number of possible combinations that add up to a positive integer target.
Example:
nums = [1, 2, 3] target = 4
The possible combination ways are:
1 2 3 4 5 6 7 |
|
Note:
Different sequences are counted as different combinations.
Therefore the output is 7.
Follow up:
- What if negative numbers are allowed in the given array?
- How does it change the problem?
- What limitation we need to add to the question to allow negative numbers?
Solution
状态转移方程:dp[x + y] += dp[x]
其中dp[x]表示生成数字x的所有可能的组合方式的个数。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|