首页 > 其他分享 >零钱兑换

零钱兑换

时间:2023-01-03 23:45:42浏览次数:37  
标签:硬币 int coins 零钱 amount 兑换 总金额

#include<iostream>
#include<vector>

// 零钱兑换

// 给定不同面额的硬币 coins 和一个总金额 amount。
// 编写一个函数来计算可以凑成总金额所需的最少的硬币个数。
// 如果没有任何一种硬币组合能组成总金额,返回 -1。
// 你可以认为每种硬币的数量是无限的。

// 示例 1: 输入:coins = [1, 2, 5], amount = 11 
// 输出:3 解释:11 = 5 + 5 + 1


using namespace std;
class Solution{
    int coinChange(vector<int>& coins,int amount){
        vector<int> dp(amount+1,INT_MAX);
        dp[0]=0;
        for(int i=0;i<coins.size();i++){
            for(int j=coins[i];j<=amount;j++){
                if(dp[j-coins[i]]!=INT_MAX){
                    dp[j]=min(dp[j-coins[i]]+1,dp[j]);
                }
            }
        }
        if(dp[amount]==INT_MAX)return -1;
        return dp[amount];
    }
};
int main(){
    return 0;
}

标签:硬币,int,coins,零钱,amount,兑换,总金额
From: https://www.cnblogs.com/codingggo/p/17023713.html

相关文章

  • 兑换零钱-简单背包问题
    题目题目链接给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数,求组成aim的最少货币数......
  • 微信支付商家付款(转账)到零钱
    zoujingli/WeChatDeveloper支持微信支付v3版的部分接口,包含转账到零钱。测试用了没问题。如果要查询转账的状态,那么可以用“查询转账批次单”和“查询转账明细单”的接......
  • 零钱兑换问题——三种题解方法
    第一种:暴力解法:5、2、1都考虑,只有等于才可cnt++,小于m要continue,大于m要break#include<iostream>usingnamespacestd;intmain(){intm,cnt=0;cin>>m......
  • 微信支付 “商家转账到零钱”
    ​这里有个坑1:转账低于5毛会失败2:转账金额需要自己取整一下,微信官方金额是分为单位,换算成元时可能会除不尽{"code":"PARAM_ERROR","detail":{......
  • dp完全背包问题解组合问题——零钱兑换
    本题为完全背包问题,遍历容量需要顺序遍历classSolution{public:intchange(intamount,vector<int>&coins){//完全背包顺序遍历//背包容量为a......
  • 零钱兑换
    零钱兑换[传送门](322.零钱兑换-力扣(LeetCode))给你一个整数数组coins,表示不同面额的硬币;以及一个整数amount,表示总金额。计算并返回可以凑成总金额所需的最......
  • #yyds干货盘点# 动态规划专题:兑换零钱
    1.简述:描述给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数,求组成aim的最少货币数。如果......
  • P4027 [NOI2007] 货币兑换
    前言打完这道题,感觉对李超线段树又有了进一步的了解。分析一个明显的性质,如果要买卷或卖卷的话,那么一定是全买全卖的,显然。设\(ans_i\)为第\(i\)天拥有的最大钱数,......
  • 【中学】零钱换整钱
    小明手中有硬币,小红手中有若干张10元的纸币。已知1角硬币厚1.8mm,5角硬币厚1.5mm,1元硬币厚2.0mm。小红拿出若干张10元的纸币,小明要将1角的硬币放成一摞,将5角......
  • 322. 零钱兑换 ---- 动态规划
    给你一个整数数组coins,表示不同面额的硬币;以及一个整数amount,表示总金额。计算并返回可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,......