首页 > 其他分享 >377. 组合总和 Ⅳ

377. 组合总和 Ⅳ

时间:2023-05-29 21:22:56浏览次数:30  
标签:遍历 target 组合 nums int 377 dp 总和

给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。

题目数据保证答案符合 32 位整数范围。


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

> 动态规划

如果求组合数就是外层for循环遍历物品,内层for遍历背包。

如果求排列数就是外层for遍历背包,内层for循环遍历物品。


class Solution {
public:
    int combinationSum4(vector<int>& nums, int target) {
        vector<int> dp(target + 1, 0);
        dp[0] = 1;
        for (int i = 0; i <= target; i++) { // 遍历背包
            for (int j = 0; j < nums.size(); j++) { // 遍历物品
                if (i - nums[j] >= 0 && dp[i] < INT_MAX - dp[i - nums[j]]) {
                    dp[i] += dp[i - nums[j]];
                }
            }
        }
        return dp[target];
    }
};

标签:遍历,target,组合,nums,int,377,dp,总和
From: https://www.cnblogs.com/lihaoxiang/p/17441695.html

相关文章

  • echarts堆叠柱状图上方展示两个数据项的总和
        //当月漏项统计排名getIndicatorCurve(data1){echarts.init(document.getElementById('lineOption5')).dispose()//销毁实例//找到容器letmyEcharts=echarts.init(document.getElementById('lineOption5'),......
  • Java:SpringBoot整合Canal+RabbitMQ组合实现MySQL数据监听
    canal[kə’næl],译意为水道/管道/沟渠,主要用途是基于MySQL数据库增量日志解析,提供增量数据订阅和消费目录一、MySQL设置二、启动Canal服务端三、通过Canal客户端消费数据四、通过RabbitMQ消费数据1、启动RabbitMQ2、修改canal配置3、消费RabbitMQ中的数据文档资料github:https......
  • 数学巧思笔记(证明+概念组合)
    利用夹逼准则+三角函数公式,求证$\lim\limits_{x\to0}\frac{sinx→三角形}{x→角度}=1$......
  • 武汉星起航:亚马逊卖家的高效选品策略——打造热销产品组合
    作为亚马逊卖家,选择合适的产品是成功的关键之一。高效选品不仅可以帮助您增加销售额,还可以提高产品竞争力和客户满意度。武汉星起航将为亚马逊卖家提供一些高效选品的策略,帮助您打造热销产品组合。一、市场研究和趋势分析定义目标受众:了解您的目标受众是选品的第一步。确定您要面向......
  • 组合数学(一本通)
    1648:【例1】「NOIP2011」计算系数 第一种方法:直接用杨辉三角求出二项式系数#include<iostream>#include<cstring>#include<algorithm>#include<cmath>usingnamespacestd;constintmaxn=1005;typedeflonglongLL;intc[maxn][maxn];intn,m,a,b,k;intmo......
  • 结构型——组合模式
    推荐文档:https://www.cnblogs.com/zhili/p/DesignPatternSummery.htmlhttps://www.runoob.com/design-pattern/design-pattern-tutorial.html什么是组合模式?组合模式(CompositePattern),又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。组合模式依据树形结构来组合......
  • WPF 设置圆角窗体,通过ListView模拟下拉组合款
    界面:<Windowx:Class="WpfApp2.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.micros......
  • FLEX实践:主应用程序、MODULE、COMPONENT组合
    本次实践主要是记录下如何在FLEX主应用程序中调用一个MODULE,而在MODULE中调用COMPONENT。在开始之前先来简单谈谈MODULE这个概念 --========================================================================模块(Module)开发的优点自不待说。FlexProject中建立多个Application......
  • ZIM|一站式接入,打通 RTC 和 IM 组合拳
     从用户信息、用户心跳到用户间私人与聊天室通信,IM一直是互联网世界中不可或缺的基础建设之一。早在连麦和直播诞生之前,IM就已是在通讯领域内服役多年的老兵,而随着线上音视频的兴起,IM不仅没有没落,反而作为音视频互动的有力支撑,继续扮演着至关重要的角色。 时至今日,IM作......
  • #yyds干货盘点# LeetCode程序员面试金典:路径总和 II
    题目:给你二叉树的根节点root和一个整数目标和targetSum,找出所有从根节点到叶子节点路径总和等于给定目标和的路径。叶子节点是指没有子节点的节点。 示例1:输入:root=[5,4,8,11,null,13,4,7,2,null,null,5,1],targetSum=22输出:[[5,4,11,2],[5,8,4,5]]示例2:输入:root=......