322. 零钱兑换

322. 零钱兑换


题目链接:322. 零钱兑换

代码如下:

class Solution {
public:
    int coinChange(vector<int>& coins, int amount) {
        int dp[amount+1];//存储兑换到amount需要的最少硬币数

        dp[0]=0;

        for(int i=1;i<=amount;i++)
            dp[i]=32767;

        for(int i=1;i<=amount;i++)
        {
            for(int j=0;j<coins.size();j++)
            {
                if(coins[j]<=i)
                    dp[i]=min(dp[i],dp[i-coins[j]]+1);
            }
        }

        return dp[amount]>amount?-1:dp[amount];
    }
};

你可能感兴趣的:(leetcode,c++)