0
点赞
收藏
分享

微信扫一扫

377. 组合总和 Ⅳ(JavaScript)

海牙秋天 2022-03-10 阅读 48
 //每个元素可以重复选择,完全背包问题
 //顺序不同的序列被视作不同的组合。--->先遍历背包容量,再遍历物品
 //凑齐目标数--->装满背包问题(dp[j]+=dp[j-w[i]])-->需要初始化第一个值为1(dp[0]=1)
var combinationSum4 = function(nums, target) {
    //长度取决于j
    let dp=new Array(target+1).fill(0)
    dp[0]=1
    let len=nums.length
    for(let j=0;j<=target;j++){  //遍历背包容量
        for(let i=0;i<len;i++){   //遍历下标
            if(j>=nums[i]){ //装得下
                dp[j]+=dp[j-nums[i]]
            }
        }
    }
    return dp[target]
};
举报

相关推荐

0 条评论