leecode322.零钱兑换

多重背包问题,物品价值和INT_MAX重量都是coins[i],amount是背包容量,求装满这个背包所需要的物品个数最少是多少

dp初始化:背包容量为0时,组合数为0,dp[0]=0;由于每次都取最小,那么其余值初始化为INT_MAX

cpp 复制代码
class Solution {
public:
    int coinChange(vector<int>& coins, int amount) {
        int n=coins.size(),bagWeight=amount;
        vector<int> dp(bagWeight+1,INT_MAX);
        dp[0]=0;
        for(int i=0;i<n;i++)
            for(int j=coins[i];j<=bagWeight;j++)
                if(dp[j-coins[i]]!=INT_MAX)
                    dp[j]=min(dp[j],dp[j-coins[i]]+1);
        if(dp[bagWeight]==INT_MAX)
            return -1;
        else
            return dp[bagWeight];
    }
};
相关推荐
墨有6667 分钟前
哈希表从入门到实现,一篇吃透!
数据结构·算法·哈希算法
We་ct11 分钟前
LeetCode 228. 汇总区间:解题思路+代码详解
前端·算法·leetcode·typescript
AIpanda88816 分钟前
如何借助AI销冠系统提升数字员工在销售中的成效?
算法
啊阿狸不会拉杆17 分钟前
《机器学习导论》第 7 章-聚类
数据结构·人工智能·python·算法·机器学习·数据挖掘·聚类
木非哲22 分钟前
机器学习--从“三个臭皮匠”到 XGBoost:揭秘 Boosting 算法的“填坑”艺术
算法·机器学习·boosting
Re.不晚26 分钟前
JAVA进阶之路——数据结构之线性表(顺序表、链表)
java·数据结构·链表
小辉同志29 分钟前
437. 路径总和 III
算法·深度优先·广度优先
笨笨阿库娅34 分钟前
从零开始的算法基础学习
学习·算法
不想睡觉_41 分钟前
优先队列priority_queue
c++·算法
那个村的李富贵9 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann