数学回味系列之23 - 小明买书
问题提出:
小明假期同爸爸一起去书店,他选中了六本书,每本书的单价分别为:3.1,1.7,2,5.3,0.9和7.2。不巧的是,小明的爸爸只带了十几块钱,为了让小明过一个愉快的假期,爸爸扔然同意买书,但提邮购一个要求,要小明从六本书中选出若干本,使得单价相加所得的和同10最接近。
解题思路:
可以将题目简化为:从6个数中选取若干个求和,使得和与10的差值最小。
这里面隐含两个问题,一是如何选择若干数,二是求差值。
参考代码:
#include <math.h>
#include <iostream>
using namespace std;int main()
{double dpBooks[6] = {3.1, 1.7, 2.0, 5.3, 0.9, 7.2}; const double dLimit = 10;double dMinAbs = 100; //给个比较大的数。long nIndex = 0;for (long k=0; k<64; k++){double dSum=0;long nBitMask=1;for (long n=0; n<6; n++){if (k & nBitMask)dSum += dpBooks[n];nBitMask = nBitMask<<1;}double dAbs = fabs(dSum - dLimit);if (dAbs < dMinAbs){dMinAbs = dAbs;nIndex = k;}}// nIndex 是最佳结果,下面打印long nBitMask=1;double dSum=0;for (long n=0; n<6; n++){if (nIndex & nBitMask){cout<< dpBooks[n]<<" ";dSum += dpBooks[n];}nBitMask = nBitMask<<1;}cout<<endl;cout<<"Sum="<<dSum<<endl;getchar();return 0;
}
数学回味系列之23 - 小明买书相关推荐
- C语言:【入门】小明买水果
题目描述 小明去超市买了若干斤水果,你能根据水果的单价,小明买的水果数量,编一个程序计算出总金额,并打印出清单. 输入 两行 第一行商品的单价,是一个小数 第二行商品的数量,是一个整数 输出 ...
- 蓝桥杯真题 14省1-啤酒和饮料 啤酒每罐2.3元,饮料每罐1.9元。小明买了若干啤酒和饮料,一共花了82.3元。 我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。 注意:答案是一
问题描述 啤酒每罐2.3元,饮料每罐1.9元.小明买了若干啤酒和饮料,一共花了82.3元. 我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒. 注意:答案是一个整数. 不要书写任何多余的内容 ...
- 1703 - 小明买水果
题目描述 小明去超市买了若干斤水果,你能根据水果的单价,小明买的水果数量,编一个程序计算出总金额,并打印出清单. 输入 第一行商品的单价,是一个小数. 第二行商品的数量,是一个整数. 输出 一行,商品 ...
- 【坐在马桶上看算法】排序总结:小哼买书
之前讲了三种常用的经典排序.排序算法还有很多,例如选择排序.计数排序.基数排序.插入排序.归并排序和堆排序等等.堆排序是基于二叉树的排序,以后再说吧.先分享一个超酷的排序算法的视频. 再来看一个具体的 ...
- 小哼买书JAVA编写,04_小哼买书
现在来看一个具体的例子"小哼买书"(根据全国青少年信息学奥林匹克联赛 NOIP2006 普及组第一题改编),来实践一下 章所学的三种排序算法. Paste_Image.png 小哼 ...
- 啊哈添柴——小哼买书
啊哈添柴--小哼买书 小哼的学校要建立一个图书角,老师派小哼去找一些同学做调查,看看同学们都喜欢读哪些书. 小哼让每个同学写出一个自己最想读的书的ISBN号(你知道吗?每本书都有唯一的ISBN号,不信 ...
- hdu4521 小明系列的问题——小明序列(LIS变种 (段树+单点更新解决方案))
链接: huangjing 题目:中文题目 思路: 1:这个题目假设去掉那个距离大于d的条件,那么必定是一个普通的LIS.可是加上那个条件后就变得复杂了.我用的线段树的解法. . .就是採用延迟更新的 ...
- 小明买了个饭团,原来背后的支付、结算、清算是这样的!
第三方支付似乎早已成为市场热词,当广大人民群众都知其然的时候,这里想从银行端的视角来梳理梳理支付.结算.清算三姐妹的关系,在屏蔽相关细节.抛弃学院派的严谨的同时,试图用推测来还原我们在摇一摇.扫一扫背 ...
- 第八周拓展实践1小明借书
问题及代码: /*Copyright(c)2016,烟台大学计算机学院 all rights reserved. 作者:曹欣宇 完成日期:2016年10月22日 版本号:v1.0题目描述小明要把5本书 ...
最新文章
- 原生JavaScript实现字符串长度截取
- 测试服务器最大链接数_LoaRunner性能测试系统学习教程:probe监控(3)
- 超级实用!用Python写股票分析工具
- 注解参数怎么使用变量_硅橡胶胶水有哪些特点?使用参数表现的怎么样?如何储存?...
- 理解 redis 中的 集合对象类型
- 2017.10.1 互不侵犯king 思考记录
- sql创建表主键gui_在SQL Server中使用主数据服务快速创建最终用户可以维护的GUI
- 优酷APP响应式布局在消费场景的落地之Android篇
- 设计一个Enum Class
- 人脸识别 face_recognition
- scan ip和vip的关系疑惑
- win7无法连接打印机拒绝访问_win7添加打印机提示windows无法连接到打印机怎么解决...
- python日期函数_Python日期时间处理: datestuff
- 5个免费的AI智能抠图工具,一键去除图片背景!
- vue屏幕分辨率适配实战解析
- vivo 云原生容器探索和落地实践
- 前端导出excel(element+xlsx+filesaver插件),表格数据重复问题解决
- bert可以做哪些nlp任务
- RPA机器人的6大收益
- 工业相机基础知识以及相机内参标定