377. Combination Sum IV
来源:互联网 发布:十大当红网络主播 编辑:程序博客网 时间:2024/06/05 19:54
377 . Combination Sum IV
Difficulty: Medium
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, 1, 1, 1) (1, 1, 2) (1, 2, 1)
(1, 3) (2, 1, 1) (2, 2) (3, 1)Note that different sequences are counted as different combinations.
Therefore the output is 7.
解题思路
最开始以为是贪心,然后发现要全部情况,又想到dfs,但是又有顺序,这就很为难了。最后想到的是对于每一位数字都进行搜索,发现了其中的规律,因为所有数字其实都是可以被之前已经遍历过得数字组合情况组合出来,也即是说,只要考虑上一位数字的组合情况就能推出下一位数字的情况,也即是dp思想。递推公式应当是
values[i]=values[i-nums[0]]+…+values[i-nums[n-1]](n为数组大小)
具体实现
class Solution {public: int combinationSum4(vector<int>& nums, int target) { vector<int> values(target+1); values[0]=1; for(int i=1;i<=target;i++){ for(int j=0;j<nums.size();j++){ int temp=i-nums[j]; if(temp>=0){ values[i]=values[i]+values[temp]; } } } return values[target]; }};
0 0
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV**
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- 377. Combination Sum IV
- xycms后台拿shell
- redhat 6 配置 yum 源的两种方法
- myeclipse报错:Could not open the editor: Invalid thread access
- 02-线性结构1 两个有序链表序列的合并 (15分)
- linux环境下mysql大小写敏感解决办法
- 377. Combination Sum IV
- 制作etcd镜像
- Ubuntu 安装Trac
- 操作图像2-用pillow操作图像
- Find the maxest element of an array
- matlab Boolean
- E:\'Program' 不是内部或者外部命令,也不是可运行的程序
- Hibernate一对多查询对象时报java.lang.StackOverflowError错误(堆栈溢出)解决方案
- 重温数据结构:深入理解红黑树