动态规划——377. Combination Sum IV[Medium]
来源:互联网 发布:php include() 编辑:程序博客网 时间:2024/05/21 22:29
题目描述
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 = 4The 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.
给定一个数组和一个指定的和,问能有多少种方式选取数组数字相加得到这个 和。
解题思路
1)数组many[i]表示 和 为 i 时的总方式数
2)遍历给定数组nums,many[i]+= many[i - nums[j]]
3)返回many[target]
其实就是考虑从i - nums[j]到 i 有几种走法,和之前的爬楼梯类似。
注意双重循环,遍历many在外层,因为many[i]+= many[i - nums[j]],则many[i - nums[j]]要先于many[i]求出来,
放在内层可能会对many[i - nums[j]]多次更新导致结果不准确
代码如下
class Solution {public: int combinationSum4(vector<int>& nums, int target) {vector<int> many(target+1, 0);many[0] = 1;for (int j = 1; j <= target; j++) { for (int i = 0; i < nums.size(); i++) {if (j - nums[i] < 0) continue;many[j] += many[j - nums[i]];}}return many[target];}};
阅读全文
0 0
- 动态规划——377. Combination Sum IV[Medium]
- 377. Combination Sum IV 类别:动态规划 难度:medium
- 377. Combination Sum IV -Medium
- 377. Combination Sum IV Medium
- 377. Combination Sum IV-动态规划
- 动态规划-377. Combination Sum IV
- 动态规划解377. Combination Sum IV
- [Medium]Combination Sum IV
- Leetcode 377. Combination Sum IV (Medium) (cpp)
- (Leetcode)377. Combination Sum IV (medium)
- LeetCode[377. Combination Sum IV] 难度[medium]
- [leetcode 377. Combination Sum IV]medium|week10
- 动态规划中级教程 377. Combination Sum IV
- leetcode 377 Combination Sum IV 动态规划
- 第十周 动态规划 Combination Sum IV
- LeetCode—377. Combination Sum IV
- LeetCode解题报告 377. Combination Sum IV [medium]
- 【LeetCode】377.Combination Sum IV(Medium)解题报告
- bzoj1711 [Usaco2007 Open]Dining吃饭 最大流
- 索尼CMOS图像传感器十年奋斗史
- 迷宫最短路径求解(BFS)
- 如何用springcloud找妹纸之3--- 一个行走的"妹纸"(服务提供者)
- P2234 [HNOI2002]营业额统计 Treap
- 动态规划——377. Combination Sum IV[Medium]
- 约瑟夫问题
- luncen
- MATLAB取整操作
- (178)创建材质函数
- [bigdata-085] centos 上 用screen
- 红黑树
- find命令进阶(三):xargs
- UBUNTU将新路径添加到ROS_PACKAGE_PATH中。