给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数。

示例:

nums = [1, 2, 3]
target = 4所有可能的组合为:
(1, 1, 1, 1)
(1, 1, 2)
(1, 2, 1)
(1, 3)
(2, 1, 1)
(2, 2)
(3, 1)
请注意,顺序不同的序列被视作不同的组合。
因此输出为 7

进阶:
如果给定的数组中含有负数会怎么样?
问题会产生什么变化?
我们需要在题目中添加什么限制来允许负数的出现?

class Solution {
public:
    int combinationSum4(vector<int>& nums, int target) {
        vector<int> dp(target + 1);
        dp[0] = 1;
        for (int i = 1; i <= target; ++i) {
            for (auto a : nums) {
                if (i >= a) dp[i] += dp[i - a];
            }
        }
        return dp.back();
    }
};

377.组合总和IV相关推荐

  1. 代码随想录44——动态规划:完全背包理论基础、518零钱兑换II、377组合总和IV

    文章目录 1.完全背包理论基础 2.518零钱兑换II 2.1.题目 2.2.解答 3.377组合总和IV 3.1.题目 3.2.解答 4.组合和排列问题的便利顺序 4.1.组合问题 4.2.排列问题 ...

  2. 算法训练Day44 动态规划专题- 背包问题 | 完全背包基础知识;LeetCode518. 零钱兑换(装满背包有多少种方法,组合数);377.组合总和IV(装满背包有多少种方法,排列数)

    前言: 算法训练系列是做<代码随想录>一刷,个人的学习笔记和详细的解题思路,总共会有60篇博客来记录,计划用60天的时间刷完.  内容包括了面试常见的10类题目,分别是:数组,链表,哈希表 ...

  3. leetcode 377 组合总和IV

    题目 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 位整数范围. 示 ...

  4. 377. 组合总和IV

    DP数组表示凑成target有多少种方法 dp[j]!+=dp[j-nums[i]] 和0-1背包相反,先遍历容量再遍历物品 这道题说所有情况都小于INT_MAX,我的第一反映是高个long long ...

  5. 377. 组合总和 Ⅳ golang 动态规划

    题目 377. 组合总和 Ⅳ 类似322 给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数. 示例: nums = [1, 2, 3] target = 4 所有可能的组 ...

  6. 力扣:377. 组合总和 Ⅳ

    力扣:377. 组合总和 Ⅳ 题目: 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证 ...

  7. leetcode.377. 组合总和 Ⅳ---dp问题

    377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 ...

  8. 模拟卷Leetcode【普通】377. 组合总和 Ⅳ

    377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 ...

  9. LeetCode 每日一题 377. 组合总和 Ⅳ

    377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 ...

  10. Java实现 LeetCode 377 组合总和 Ⅳ

    377. 组合总和 Ⅳ 给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数. 示例: nums = [1, 2, 3] target = 4 所有可能的组合为: (1, 1 ...

最新文章

  1. 摄像头与毫米波雷达(Radar)融合
  2. 多所高校官宣硕士扩招!最大扩招增幅近60%
  3. 中国批准AMD收购赛灵思!苏妈花350亿美元集齐CPU\GPU\FPGA三大芯片业务
  4. 数学问题——最大公约数与最小公倍数
  5. linux学习blog
  6. openstack上传镜像失败_制作云window10镜像
  7. MFC框架类、文档类、视图类相互访问(及窗口句柄获取)的方法
  8. 修改参数failed_login_attempts=unlimited
  9. Python多版本共存配置
  10. 推荐十款非常优秀的 HTML5 在线设计工具
  11. 中国土壤全磷含量空间分布数据
  12. java运用jsp_JSP:JAVA Bean在JSP中的运用
  13. 有趣有用的PCA——PCA压缩图片
  14. 京东登录页面html代码_利用Python爬取京东商品的一种办法
  15. 镁光 鸡血模式 linux,所以,镁光1100到底是不是全盘slc的模式?之前就几个帖子...
  16. ubuntu增加swap交换空间
  17. 萝卜青菜各有所爱------TypeScript VS JavaScript
  18. PPT如何设置幻灯片大小
  19. python如何赚外快 淘宝_Python如何爬取淘宝MM呢?教你一招
  20. indiegogo众筹代理经验分享

热门文章

  1. 64位的windows server 2003运行IIS6运行32位的.NET程序
  2. struts1(一)流程分析
  3. 大规模机器学习:将数据科学引入生产系统架构的典型模式
  4. 苹果iCloud大调整:干掉1TB版本,2TB降价
  5. 苹果:我们从未向中国政府透露源代码
  6. 突然决定要记笔记,于是就来到了博客园,希望自己能够坚持下去
  7. Apache PDFBox 1.8.1 发布
  8. 自定义jQuery翻页插件
  9. qt 增加的翻译没有作用上_Qt翻译文件使用方法
  10. 从零开始学android编程_从零开始学机械,如何画好一张零件图?图文详解!-UG编程...