Java发工资

作为企业的老板,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵
但是对于财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡最近就在考虑一个问题:
如果每个员工的工资额都知道,最少需要准备多少张人民币,才能在给每位员工发工资的时候都不用找零呢?
这里假设员工的工资都是正整数,单位元,人民币一共有100元、50元、10元、5元、2元和1元六种。
Input
输入数据包含多个测试实例,每个测试实例的第一行是一个整数n(n<100),表示员工的人数,然后是n个员工的工资。
n=0表示输入的结束,不做处理。
Output
对于每个测试实例输出一个整数x,表示至少需要准备的人民币张数。每个输出占一行。
Sample Input
3
1 2 3
0
Sample Output
4

public class FaGongZi {
	public static void main(String[] args) {
		String str="1 2 3 1578";
		System.out.println(method(str));
	}
	public static int method(String str){
		String[] strs=str.split(" ");
		int count=0;
		for(String s:strs){
			count+=method2(Integer.parseInt(s));
		}
		return count;
	}
	public static int method2(int sal){
		int count=0;
		if(sal>=100){
			while(sal>=100){
				sal-=100;
				count++;
			}
		}
		if(sal>=50){
			while(sal>=50){
				sal-=50;
				count++;
			}
		}
		if(sal>=10){
			while(sal>=10){
				sal-=10;
				count++;
			}
		}
		if(sal>=5){
			while(sal>=5){
				sal-=5;
				count++;
			}
		}
		if(sal>=2){
			while(sal>=2){
				sal-=2;
				count++;
			}
		}
		if(sal>=1){
			while(sal>=1){
				sal-=1;
				count++;
			}
		}
		return count;
	}
}

 

posted @ 2017-12-11 15:42  香菇炖小鸡  阅读(589)  评论(0编辑  收藏  举报