Hua Wei 机试题目二
2024-08-31 08:06:10
题目描述:
假设1元,5元,10元,50元,100元的人民币若干,实现一个能找到最少张数累计达到一个指定金额方法。如:67元,可分为67个1元钱。也可分为6个10元7个1元,其中最少人民币分法为一张50元,一张10元,一张5元,两张1元,五张不同金额的拆分方法为最最少张数拆分法。
要求实现函数:
void CalLeastChange(long lInputValue, int *iOutputRlt)
【输入】 lInputValue: 输入整数金额
【输出】 lOutputRlt: 输出计算结果
【注意】仅考虑整数金额拆分方法
示例
输入:“67”
输出:“5”
#include<iostream>
using namespace std; void CalLeastChange(long lInputValue, int *iOutputRlt)
{
int highNum=lInputValue/(*);
int lowerNum=lInputValue-(lInputValue/)*;
int curNum=(lInputValue/)%; int count=highNum;
if(curNum>=)
{
count++;
curNum-=;
}
count=count+curNum; if(lowerNum>=)
{
count++;
lowerNum-=;
}
count=count+lowerNum; *iOutputRlt=count; cout<<*iOutputRlt<<endl; } int main()
{
int lInputValue=;
int lInputValue1=;
int iOutputRlt[]={};
CalLeastChange(lInputValue,iOutputRlt);
CalLeastChange(lInputValue1,iOutputRlt);
return ;
}
最新文章
- 当前不会命中断点。源代码与原始版本不同 (VS2012)
- 我的mysql测试环境
- tpch-kudu
- 运行时报错 ADB server didn’t ACK
- asp.net <;% %>;,<;%# %>;,<;%= %>;,<;%$ %>;区别大集合
- linux下安装
- Unity3D 之UGUI 图片
- [topcoder]BestRoads
- 《python基础教程》笔记之 列表
- Python 3从入门到精通01-环境搭建
- pat 1022 digital library
- ";Uncaught object angular.js:36";诡异错误
- Redis in .NET Core 入门:(4) LIST和SET
- 键值对的算子讲解 PairRDDFunctions
- mysql5.5被django抛弃,安装mysql5.7记录
- 【Python026--字典内键方法】
- ssm项目中 数据库和资源的备份
- 在centos6中编译安装httpd-2.4/搭建LAMP
- Elasticsearch搜索异常-------org.elasticsearch.common.io.stream.NotSerializableExceptionWrapper: parse_exception
- Linux下Shell元字符的释义