首页 > 试题广场 >

硬币兑换

[编程题]硬币兑换
  • 热度指数:2545 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
A 国一共发行了几种不同面值的硬币,分别是面值 1 元,2 元,5 元,10 元,20 元,50 元, 100 元。假设每种面值的硬币数量是无限的,现在你想用这些硬币凑出总面值为 n 的硬币, 同时你想让选出的硬币中,不同的面值种类尽可能多;在面值种类尽可能多的情况下,你想 让选择的硬币总数目尽可能多,请问应该怎么选择硬币呢?

数据范围:

输入描述:
第一行包含一个数字𝑛,表示要凑出的面值。


输出描述:
输出两个整数,分别表示最多能有多少种类型的硬币以及在类型最多的情况下最多能用上多少枚硬币。
示例1

输入

3

输出

2 2
示例2

输入

10

输出

3 5
头像 白伟仝
发表于 2020-07-25 09:26:28
先按单面值累加,剩下的全用1元补足: import java.util.*; public class Main { public static void main(String[] args) throws Exception{ Scanner sc = new Scann 展开全文
头像 思考的陈
发表于 2024-01-06 22:33:37
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int m 展开全文
头像 17c89
发表于 2024-02-04 11:26:08
import java.util.Scanner; public class Main { private static int[] coins = new int[]{1, 2, 5, 10, 20, 50, 100}; public static void main(Stri 展开全文
头像 laglangyue
发表于 2020-06-30 22:21:54
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int n=sc.nextInt 展开全文
头像 苏觅云
发表于 2022-05-19 22:20:07
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.n 展开全文