开始 2023-12-09 08:20:00

1209(完全背包练习)

结束 2023-12-16 00:00:00
Contest is over.
当前 2024-12-22 14:45:18

E. 零钱兑换

描述

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

你可以认为每种硬币的数量是无限的。

示例 1:

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

示例 2:

输入:coins = [2], amount = 3
输出:-1

示例 3:

输入:coins = [1], amount = 0
输出:0

示例 4:

输入:coins = [1], amount = 1
输出:1

示例 5:

输入:coins = [1], amount = 2
输出:2

输入

输出

样例

输入

3 11
1 2 5

输出

3

输入

1 3
2

输出

-1

提示

1 <= coins.length <= 12
1 <= coins[i] <= 2^31 - 1
0 <= amount <= 10^4

Submit

登录

注册
时间限制 1 秒
内存限制 128 MB
提交