996A. Hit the Lottery
艾伦有很多钱。他在银行里有n美元。出于安全原因,他想以现金提取(我们不会在这里透露原因)。美元钞票的面额是1,5,10,20,100.艾伦提取全部余额后可以收到的最低钞票数量是多少?
输入
输入的第一行也是唯一一行包含单个整数n(1≤n≤10^9).
输出
输出 艾伦可以收到的最小钞票数。
例子
输入
125
输出
3
输入
43
输出
5
输入
1000000000
输出
10000000
解决方法:
// codeforces
// 996A. Hit the Lottery
# include<iostream>
using namespace std;
int main()
{
int n, sum = 0, a;
cin >> n;
int num[] = {100, 20, 10, 5, 1};
for(int i = 0; i < 5; i++)
{
a = n / num[i];
sum = sum + a;
n = n - a * num[i];
if(n == 0) break;
}
cout << sum;
return 0;
}