百鸡百钱问题及其算法分析.doc_第1页
百鸡百钱问题及其算法分析.doc_第2页
百鸡百钱问题及其算法分析.doc_第3页
百鸡百钱问题及其算法分析.doc_第4页
全文预览已结束

VIP免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

百钱百鸡问题的最佳解决方案(陕西师范大学计算机科学学院10级计科一班 西安 710062)摘要:本文主要讨论百鸡百钱问题,通常用蛮力法策略,用枚举法表现,排除明显不合理情况,列举出符合问题的解,分别验证解的可行性,得到最优算法。关键词:蛮力法;枚举;百鸡百钱;The money the chicken question the best solutionduan xi-juan, zhongmei, zhao shan-shan, zhao ya-wen(School of Computer Science, ,Shanxi Normol University, Xian 710062)Abstact :In this article, we mainly discuss the chicken and the money problem. Usually use brute force method strategy, with enumeration method performance, eliminate obviously unreasonable situation, Enumerate conform to the problem solution, which verified the feasibility of the solution, and get the optimal algorithm. Keywords: The brute force method;Enumeration;Hundred chickens money1引言在求解一个较小规模的问题时,可以根据问题中的约束条件把可能的情况一一列举出来,然后注意尝试从中找到满足约束条件的解,若该问题规模较大,符合条件的情况很多,则需要进一步考虑,排除一些明显不合理的情况,尽可能减少问题可能解的列举数目。2问题描述百钱百鸡问题。中国古代数学家张丘建在他的算经中提出了他的著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?3算法设计根据问题中的约束条件将可能的情况一一列举出来,但如果情况很多,排除一些明显的不会理的情况,尽可能减少问题可能解的列举数目,然后找出满足问题条件的解。1)算法设计一首先问题有三种不同的鸡,那么我们可以设鸡翁为x只,鸡母为y只,鸡雏为z只。由题意给出一共要用100钱买一百只鸡,如果我们全部买鸡翁最多可以买1005=20只,显然x的取值范围是120之间;如果全部买鸡母最多可以买100333只,显然y的取值范围在133之间;如果全部买鸡雏最多可以买1003300只,可是题目规定是买100只,所以z的取值范围是1100.那么约束条件为:xyz100且5x3y+1003100.开始定义x.y,zx=20?y=33?z=99?百鸡百钱?结束N输出结果NNNYYYY流程图如下: 算法1程序运行结果截图:2)算法设计二假如我设了鸡翁和鸡母的个数为x和y了,那么鸡翁和鸡母的数量就是确定的,那么鸡雏的数量就是固定的为100xy,那么此时就不再需要进行枚举了,约束条件就只有一个了:5x3yz3100.流程图如下所示:结束图5-9 程序执行流程图算法2程序运行结果截图:4算法分析算法设计一需要枚举尝试次,算法的效率显然很低。算法设计二只须枚举尝试次。实现时约束条件又限定z能被3整除时,才会判断“”。这样省去了不整除3时的算术计算和条件判断,进一步提高了算法的效率。5结束语有此例可以看出,枚举法是蛮力策略的一种变现形式,也是一种使用非常普遍的思维方法。然而对于同一个问题,可以有不同的枚举范围,不同的枚举对象,解决问题的效率差别就会很大,选择合适的方法会让解决问题的效率大大提高。6参考文献1吕国英

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论