题目信息

题目类型
练习
题目年份
2025
题目题型
编程题
关 键 词
兑换零钱

题目题干

描述

给你一个整数数组,表示不同面额的硬币;以及需要兑换的总金额。4mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

计算并输出可以凑成总金额所需的最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,则输出 -1 。4mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

你可以认为每种硬币的数量是无限的。4mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入
输入的第一行是一个整数N,表示数据的组数,接下来的2N行每2行是一组输入数据。4mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
对于每一组输入数据:4mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
第一行是两个整数L和A,分别表示硬币的面额种类以及需要兑换的总金额,中间用空格分隔。4mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
第二行是是L个正整数,表示每种硬币的面额,中间用空格分隔。
输出
对于每一组输入,输出为一行,包含一个整数,表示所需的最少的硬币个数,如果没有可行的组合,输出-1。
样例输入
2
3 11
1 2 5
1 3
2
样例输出
3
-1
提示
L<=124mi100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
A<=10000

答案解析

相关题目

构建最小数字描述 你能否设计一种算法,在非负整数Z中找到一个长度为length(Z)-m的子序列,也就是删除m个数字,使得剩下的数字子序列组成的数字最小。 输入 输入由两个整数组成,分别为Z与m。
兑换零钱描述 给你一个整数数组,表示不同面额的硬币;以及需要兑换的总金额。 计算并输出可以凑成总金额所需的最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,则输出 -1 。 你可以认为每种硬
公共子序列描述 我们称序列Z = < z1, z2, ..., zk >是序列X = < x1, x2, ..., xm >的子序列当且仅当存在 严格上升 的序列< i1
计算字符串距离描述 对于两个不同的字符串,我们有一套操作方法来把他们变得相同,具体方法为: 修改一个字符(如把“a”替换为“b”) 删除一个字符(如把“traveling”变为“travelng”)
整数拆分描述 给定一个正整数 n ,将其拆分为 k 个 正整数 的和( k >= 2 ),并使这些整数的乘积最大化。 打印 你可以获得的最大乘积 。 输入 一个整数 n 输出 可以获得的最大
棋盘问题描述 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行
救生艇描述 给定数组 people 。people[i]表示第 i 个人的体重 ,船的数量不限,每艘船可以承载的最大重量为 limit。 每艘船最多可同时载两人,但条件是这些人的重量之和最多为 li
买卖股票描述 小明通过占星术知道了未来k天某支股票的价格变化,因此小明希望通过买卖这支股票来获得利润。 在每一天,小明都可以决定是否购买和/或出售股票,但是在任何时候 最多 只能持有 一股 股票。同
在C++, continue语句通常与if语句配合使⽤ 。 ( ) A.正确 B.错误
最小数 问题描述 输入 n 个整数的数列,请找出数列中最小数所在的位置(若有多个最小数,则选最左边的那个最小数),把它与数列的第一个数对调,其他数的位置不动,输出此数列。 输入格式 第 1 行输入数

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢