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];
    }
};
相关推荐
WolfGang00732117 分钟前
代码随想录算法训练营Day28 | 509.斐波那契数列、70.爬楼梯、746.使用最小花费爬楼梯
算法
Boop_wu21 分钟前
[Java EE] 多线程进阶(JUC)(2)
java·jvm·算法
闻缺陷则喜何志丹1 小时前
【SOSDP模板 容斥原理 逆向思考】3757. 有效子序列的数量|分数未知
c++·算法·力扣·容斥原理·sosdp·逆向思考
CoovallyAIHub1 小时前
如何在手机上轻松识别多种鸟类?我们发现了更简单的秘密……
深度学习·算法·计算机视觉
别动哪条鱼1 小时前
AVAudioFifo
数据结构·ffmpeg·音视频
第二只羽毛1 小时前
遵守robots协议的友好爬虫
大数据·爬虫·python·算法·网络爬虫
艾斯比的日常2 小时前
Java 三色标记算法:并发垃圾回收的核心技术解析
java·开发语言·算法
CoovallyAIHub2 小时前
抛弃LLM!MIT用纯视觉方法破解ARC难题,性能接近人类水平
深度学习·算法·计算机视觉
程序猿编码2 小时前
PRINCE算法的密码生成器:原理与设计思路(C/C++代码实现)
c语言·网络·c++·算法·安全·prince
高洁012 小时前
具身智能-视觉语言导航(VLN)
深度学习·算法·aigc·transformer·知识图谱