卖小女孩的火柴


私信TA

用户名:1505296953

访问量:4495

签 名:

冲一冲!

等  级
排  名 3550
经  验 1900
参赛次数 1
文章发表 10
年  龄 0
在职情况 学生
学  校 移通
专  业 计算机科学与技术

  自我简介:

解题思路:

注意事项:先取100面额的人民币,再依次降低面额

参考代码:

import java.util.Scanner;


public class Main {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

while (true) {

int[] a = new int[100];// 定义一个长度为100的整形数组

int x = sc.nextInt();

if (x == 0)

break;

else

for (int i = 0; i < x; i++) {

a[i] = sc.nextInt();

} // 输入数组的值


System.out.println(gs(a, x));// 调用方法求出最少需要的人民币张数

}

}


public static int gs(int[] a, int x) {

int s = 0;

for (int i = 0; i < x; i++) {

s = s + a[i] / 100 + a[i] % 100 / 10 + a[i] % 10 / 5 + a[i] % 5 / 2 + a[i] % 2 / 1;// 先去最大面额的人民币,依次递减,直到结束

}

return s;

}

}



 

0.0分

0 人评分

  评论区

  • «
  • »