#3920. 最少魔法金币挑战

最少魔法金币挑战

🐰🐱💰 兔猫信奥学院·最少魔法金币挑战

在兔猫信奥学院,🧙加菲老师给小兔和小猫出了一个特别的魔法试炼:
他们面前摆着各种面额的魔法金币(数组 coins),现在要凑出恰好价值为 amountamount 的魔力总和。
但魔法消耗巨大,他们希望用 最少 的金币数完成任务。请帮他们计算:

最少 需要多少枚金币才能凑出总金额 amountamount?若无法凑出,返回 1-1


输入格式

第一行:两个整数 n amount  
第二行:n 个互不相同的正整数 coins[i]
  • 1n121 \le n \le 12
  • 1coins[i]23111 \le coins[i] \le 2^{31}-1
  • 0amount1040 \le amount \le 10^4

输出格式

一个整数:最少需要的金币枚数;若无解,输出 -1
3 11
1 2 5
3

解释1
用法最优:11=5+5+111 = 5 + 5 + 1,共需 3 枚金币。

1 3
2
-1

解释2
只有面额为 2 的金币,无论如何组合,都无法凑出总金额 3,故返回 –1。