HDU-2021
2013-12-26 23:41
281 查看
发工资咯:)
[align=left]Problem Description[/align]作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵
但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡老师最近就在考虑一个问题:如果每个老师的工资额都知道,最少需要准备多少张人民币,才能在给每位老师发工资的时候都不用老师找零呢?
这里假设老师的工资都是正整数,单位元,人民币一共有100元、50元、10元、5元、2元和1元六种。
[align=left]Input[/align]
输入数据包含多个测试实例,每个测试实例的第一行是一个整数n(n<100),表示老师的人数,然后是n个老师的工资。
n=0表示输入的结束,不做处理。
[align=left]Output[/align]
对于每个测试实例输出一个整数x,表示至少需要准备的人民币张数。每个输出占一行。
[align=left]Sample Input[/align]
3
1 2 3
0
[align=left]Sample Output[/align]
4
#include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h> int main() { int n; int i100,i10,i5,i2,i1,i50; int k,t; int sum; while (1) { scanf("%d",&n); if (!n) break; sum=0; while (n--) { t=0; scanf("%d",&k); while (k!=0) { if (k/100>0) { t=k/100; k-=t*100; sum+=t; } if (k/50>0) { t=k/50; k-=t*50; sum+=t; } if (k/10>0) { t=k/10; k-=t*10; sum+=t; } if (k/5>0) { t=k/5; k-=t*5; sum+=t; } if (k/2>0) { t=k/2; k-=t*2; sum+=t; } if (k>0) { t=k; k-=t; sum+=t; } } } printf("%d\n",sum); } return 0; }
相关文章推荐
- mobile automation tools(未整理)
- 信号驱动(SIGIO)的异步I/O
- 信号驱动(SIGIO)的异步I/O
- linux shell 脚本攻略学习11--mkdir和touch命令详解
- 驱动开发坑总结
- 黑马程序员 交通灯管理系统
- Qt Creator提示"Qt没有被正确安装,请运行make install"的解决办法
- JAVA面试精选
- Leetcode: Two Sum
- cc150 50道高频总结
- JavaScript Boolean对象
- Java面试题集(86-115)
- 给android avd 安装apk时出现的错误:adb不是内部或者外部指令及丢失adbwinapi.dll问题
- wifi基础知识
- 给将入职场或刚入职场的人的几个建议
- Windows服务小技巧
- mysql存储过程读书笔记2(control and conditional logic)
- [实用工具类与产品化] -- 金融类XML常用文本值转换【难度 ★★】
- Swing —— Text Area 常用API
- coding----1wcods----坚持第6天----988行