blob: 5d31f7a695f7c30e3c87495cea27a7168782bde2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#include "leetcode.h"
class Solution {
public:
int coinChange(vector<int> &coins, int amount) {
int m = amount + 1;
vector<int> dp(amount + 1, m);
dp[0] = 0;
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];
}
};
int main() {
vector<int> coins = {1, 2, 5};
int amount = 11;
Solution obj;
cout << obj.coinChange(coins, amount);
}
|