解题思路: 重复使用可使用的最大面值或者相等面值即是最少需要的人民币张数
注意事项:要求可以计算多个工资组
参考代码:
import java.util.ArrayList; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); int[] numa={100,50,10,5,2,1}; ArrayList list =new ArrayList();//存放计数结果 while(true){ int count=0; int n=sc.nextInt(); if (n==0) { //为0结束循环,输出集合 for (Integer integer : list) { System.out.println(integer); } System.exit(0); } int[] num=new int[n]; for (int i = 0; i < num.length; i++) { //存入工资 num[i]=sc.nextInt(); } for (int i = 0; i < num.length; i++) { for (int j = 0; j < numa.length;) { if (num[i]>=numa[j]) { num[i]-=numa[j]; count++; } else if (num[i]==0) { break; } else { //没有合适的面值再降低面值 j++; } } } list.add(count); } } }
0.0分
5 人评分
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:436 |
哥德巴赫曾猜测 (C语言代码)浏览:1147 |
求圆的面积 (C语言代码)浏览:1366 |
不会做的浏览:954 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:790 |
【偶数求和】 (C语言代码)浏览:674 |
【偶数求和】 (C语言代码)浏览:588 |
WU-格式化数据输出 (C++代码)浏览:1312 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:895 |
The 3n + 1 problem (C语言代码)浏览:603 |