笔试题32——超市找零方案
题目描述:
在日常消费中,超市收营员在结算中经常遇到需要给顾客找零的情况。为了节省人力,编写一个程序,要求输入顾客应付金额和实付金额,系统给出合适的找零方案。
输入描述:
输入应付金额和实付金额
输出描述:
输出合适的找零方案(注意最后要输出一个分号,所有输出都是英文半角状态,余额保留一位小数)
输入:
26.5 50
输出:
23.5 20:1;1:3;0.5:1;
核心代码如下:
#include <iostream>
#include <vector>
#include <string>
#include <cstring>
#include <algorithm>
#include <map>
#include<cmath> using namespace std;int main()
{//50,20,10,5,1,0.5float m, n;cin >> m >> n;if (m == n) {cout << "0.0" << endl;}if (m > n)return 0;float res = n - m;printf("%.1lf ", res); //输出余额int c50 = 0, c20 = 0, c10 = 0, c05 = 0, c01 = 0, c005 = 0; //分别记录所需零钱个数while (res >= 50) {c50++;res -= 50;}while (res >= 20) {c20++;res -= 20;}while (res >= 10) {c10++;res -= 10;}while (res >= 5) {c05++;res -= 5;}while (res >= 1) {c01++;res -= 1;}while (res >= 0.5) {c005++;res -= 0.5;}if (c50 != 0) {cout << "50:" << c50 << ";";}if (c20 != 0) {cout << "20:" << c20 << ";";}if (c10 != 0) {cout << "10:" << c10 << ";";}if (c05 != 0) {cout << "5:" << c05 << ";";}if (c01 != 0) {cout << "1:" << c01 << ";";}if (c005 != 0) {cout << "0.5:" << c005 << ";";}cout << endl;return 0;
}
笔试题32——超市找零方案相关推荐
- python找零方案_从自动贩卖机找零看Python中的动态规划问题
原文:http://www.jianshu.com/p/144db81341a3 从自动贩卖机找零看Python中的动态规划问题 问题描述 假设在某国存在[1,x1,x2,x3,...,xn]多种货币 ...
- 京东:笔试题(合唱队找剩余的最小值,考场安排搬出的人数尽可能少)
1. 合唱队 题目 大意: 将数组分成若干个数组 ,子数组内部从小到大排序,使所有子数组整体按非递减顺序,求子数组最大数量: 输入 4 2 1 3 2 输出 2 输入 10 69 230 77 650 ...
- java笔试题:海量数据找最大或最小的k个数(堆排序)
题目 海量数据找最大或最小的k个数,这里以找最小的K个数为例 堆排序 例如给一个数组nums[]这棵树就是完全二叉树,则: nums[i]的左节点为:num[2 * i + 1] nums[i]的右节 ...
- Caisa去超市买东西,有s美元,一美元等于100每分,现在给定n种商品的价格x美元y美分,超市找零是用糖果替代美分,一美分一颗糖果,但是最大99美分,Caisa想要尽量多的糖果
#include <stdio.h> #include <math.h> int main() {int n,s,x,y,max=-99,tmp;scanf("%d% ...
- 硬币找零问题,动态规划基础,百度面试题
问题描述:给出几种面值的硬币,要求用这几种硬币找零出所给零钱数,用的硬币数要最少. 过去我们用过贪心法解决此类问题,包括本人在百度面试时,也是用的贪心法(面试官对这个解答不满意),贪心法只适用于硬币特 ...
- Java面试题(一)100家大公司java笔试题汇总
Java考试题 一:单选题 -– 1.下列哪一种叙述是正确的(D ) A. abstract修饰符可修饰字段.方法和类 B. 抽象方法的body部分必须用一对大括号{ }包住 C. 声明抽象方法,大括 ...
- java面试笔试题大汇总
java面试笔试题大汇总 JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题 ...
- 100家大公司java笔试题汇总
NHN CHINA公司笔试题 1.在这写代码 Var array1 = [10,20]; Var array2 = [8,5]; Var result = array1.add(array2); Al ...
- NYOJ995硬币找零(简单dp)
1 /* 2 题意:给你不同面额的硬币(每种硬币无限多),需要找零的面值是T,用这些硬币进行找零, 3 如果T恰好能被找零,输出最少需要的硬币的数目!否则请输出剩下钱数最少的找零方案中的最少硬币数! ...
最新文章
- windows 下frp服务启动_内网穿透frp linux服务端搭建和windows客户端使用
- xgboost防止过拟合
- 使用 ohmyzsh 打造 windows、ubuntu、mac 系统高效终端命令行工具
- rabbitmq配置文件字段spring.rabbitmq.publisher-confirms过时
- 代码合并工具_11个代码质量审核和管理工具,程序员必备!
- 易语言窗口c_句柄取进程名,易语言窗口句柄取进程文件名源码
- 【QT】QT从零入门教程(十三):QT画笔工具QPainter (双缓冲绘图)
- android 程序 架构,Android应用架构
- vue+video.js实现前端视频流(hls、MP4、flv)
- SQL Server 2016 完全卸载(安装)全教程
- TensorFlow中CNN的两种padding方式“SAME”和“VALID”
- NVIDIA安装程序失败(组件全部未安装)
- wireshark抓web包
- C语言及数据结构课程设计:超市信息管理系统
- 音乐格式怎么转换,音频格式转换的方法
- 人工智能基础之美女和野人过河问题
- VS2017错误:未将对象引用设置到对象的实例
- 计算机文件只读设置取消,如何删除只读文件
- fadeIn()与fadeOut()方法
- 第三方支付“快钱”的经营策略