25匹赛马,5个跑道,也就是说每次有5匹马可以同时比赛。问最少比赛多少次可以知道跑得最快的5匹马
前5次大家都一样,排序后如下
A1,A2,A3,A4,A5
B1,B2,B3,B4,B5
C1,C2,C3,C4,C5
D1,D2,D3,D4,D5
E1,E2,E3,E4,E5
第六次,最大值比较,找出最快的马
第7次参加比赛的马匹为
A2 A3 B2 C2 D1
下面就3种第7次可能的比赛结果进行分析:
1、若第7次的比赛可能的一种结果为:
A2 A3 B2 C2 D1
此时必进入前5的是A1、A2、A3
可能进前5的是A4、A5、B1、B2、C1
则第8次为
A4、A5、B1、B2、C1
取前2名,与A1、A2、A3一直即为前5
2、若第7比赛结果为B2、A2、C2、A3、D1
此时必进入前5的是A1、B1、B2
可能进入前5的是A2、B3、B4、C1
第8次只要让这4匹马参赛就可以啦
3、若第7次比赛结果为D1、C2、A2、A3、B1
此时必进入前5的是A1、B1、C1、D1
而剩下的第5匹马只可能出现在C2、D2、E1这3匹马中,自然,让这3匹马参加第8次比赛就可以啦
总之,不管第7次的比赛结果如何,都在第8次比赛中做出适当的安排,即而可以在8次比赛后确定跑得最快的前5匹马。
36匹马,通过赛马寻找出最快的3匹。跑道可容纳6匹马同时赛跑,请问最快需要几次赛马可以找到最快的3匹马?
首先假设每匹马的速度不一样,这样分析可以抓住要害。如果有速度相同的马,则问题会稍微复杂一点,但基本思路是一致的。
先给出一个最简单的方案。36匹马随机分为6组,分别进行赛跑,那么每组的后3名将被淘汰(这些马不可能是最快的),余下18匹马。将剩余的18匹马再次分为3组进行赛跑,余下9匹。在最后9匹中随机选择6匹进行赛跑,将最快的3匹马与剩下3匹马进行赛跑,最后胜出的3匹马即为所求。总共赛马次数为6+3+1+1=11
让我们回顾一下上述的赛马过程。我们发现,最初的6次赛马之后,剩余的18匹马实际上是局部有序 的,每一组赛马的3匹优胜马都是有序的,很显然上面的做法过于简单,存在冗余操作。我们接下来要做的工作实际上类似于归并排序。那么怎么做可以用最少的赛马次数从18匹马中挑选出最快的3匹呢?
答案是这样的:将第一组中3匹优胜马按排名令为A1,A2,A3,其中A1最快;同理第二组令为B1,B2,B3;第三组C1,C2,C3;以此类推,直至F1,F2,F3。取A1,B1,C1,D1,E1,F1进行赛跑,为了方便说名,假设结果为A1>B1>C1>D1>E1>F1。很显然,D1,E1,F1,将被淘汰,于是D、E、F组的其余马也将被淘汰,因为他们比这3匹马还慢。再看C组,在剩余有竞争力的9匹马中(分别是A1,A2,A3,B1,B2,B3,C1,C2,C3),C1最多只能排第三,那么C2,C3不可能成为最快的3匹马之一,将其淘汰。同理观察B组,可知B3也不具备成为前三甲的可能,淘汰之!现在只剩下A1,A2,A3,B1,B2,C1共6匹马,再次进行赛马即得到答案。总共赛马次数为6+1+1=8
结论:最快通过8次赛马可得答案。
前5次大家都一样,排序后如下
A1,A2,A3,A4,A5
B1,B2,B3,B4,B5
C1,C2,C3,C4,C5
D1,D2,D3,D4,D5
E1,E2,E3,E4,E5
第六次,最大值比较,找出最快的马
第7次参加比赛的马匹为
A2 A3 B2 C2 D1
下面就3种第7次可能的比赛结果进行分析:
1、若第7次的比赛可能的一种结果为:
A2 A3 B2 C2 D1
此时必进入前5的是A1、A2、A3
可能进前5的是A4、A5、B1、B2、C1
则第8次为
A4、A5、B1、B2、C1
取前2名,与A1、A2、A3一直即为前5
2、若第7比赛结果为B2、A2、C2、A3、D1
此时必进入前5的是A1、B1、B2
可能进入前5的是A2、B3、B4、C1
第8次只要让这4匹马参赛就可以啦
3、若第7次比赛结果为D1、C2、A2、A3、B1
此时必进入前5的是A1、B1、C1、D1
而剩下的第5匹马只可能出现在C2、D2、E1这3匹马中,自然,让这3匹马参加第8次比赛就可以啦
总之,不管第7次的比赛结果如何,都在第8次比赛中做出适当的安排,即而可以在8次比赛后确定跑得最快的前5匹马。
36匹马,通过赛马寻找出最快的3匹。跑道可容纳6匹马同时赛跑,请问最快需要几次赛马可以找到最快的3匹马?
首先假设每匹马的速度不一样,这样分析可以抓住要害。如果有速度相同的马,则问题会稍微复杂一点,但基本思路是一致的。
先给出一个最简单的方案。36匹马随机分为6组,分别进行赛跑,那么每组的后3名将被淘汰(这些马不可能是最快的),余下18匹马。将剩余的18匹马再次分为3组进行赛跑,余下9匹。在最后9匹中随机选择6匹进行赛跑,将最快的3匹马与剩下3匹马进行赛跑,最后胜出的3匹马即为所求。总共赛马次数为6+3+1+1=11
让我们回顾一下上述的赛马过程。我们发现,最初的6次赛马之后,剩余的18匹马实际上是局部有序 的,每一组赛马的3匹优胜马都是有序的,很显然上面的做法过于简单,存在冗余操作。我们接下来要做的工作实际上类似于归并排序。那么怎么做可以用最少的赛马次数从18匹马中挑选出最快的3匹呢?
答案是这样的:将第一组中3匹优胜马按排名令为A1,A2,A3,其中A1最快;同理第二组令为B1,B2,B3;第三组C1,C2,C3;以此类推,直至F1,F2,F3。取A1,B1,C1,D1,E1,F1进行赛跑,为了方便说名,假设结果为A1>B1>C1>D1>E1>F1。很显然,D1,E1,F1,将被淘汰,于是D、E、F组的其余马也将被淘汰,因为他们比这3匹马还慢。再看C组,在剩余有竞争力的9匹马中(分别是A1,A2,A3,B1,B2,B3,C1,C2,C3),C1最多只能排第三,那么C2,C3不可能成为最快的3匹马之一,将其淘汰。同理观察B组,可知B3也不具备成为前三甲的可能,淘汰之!现在只剩下A1,A2,A3,B1,B2,C1共6匹马,再次进行赛马即得到答案。总共赛马次数为6+1+1=8
结论:最快通过8次赛马可得答案。
发表评论
-
小白鼠试药
2011-11-26 19:59 1102大家应该都听说过这个老题目:有 1000 个一模一样的瓶子,其 ... -
算生日是哪天
2011-11-26 19:57 1小明和小强都是张老师的学生,张老师的生日是M月N日, 2 ... -
自由主义的书单-王怡
2011-11-11 19:17 1247zz:http://www.douban.com/group/ ... -
HTTP协议详解
2011-11-07 21:10 698zz:http://blog.csdn.net/gueter/ ... -
SSL和HTTPS
2011-11-07 20:59 839zz:http://cuiyongxiu.com/201102 ... -
Actor
2011-11-07 17:23 0http://blog.jeoygin.org/archive ... -
软件质量的度量
2011-11-04 20:07 3908如何去度量软件的 ... -
YCSB测试Hbase-MySQL测试
2011-11-04 15:46 0Hbase测试: http://hbase.inf ... -
Java命令参数说明
2011-11-03 14:45 721序言: Java 在运行已编译完成的类时,是通过 java ... -
REST API必须是超文本驱动的
2011-10-24 21:10 1486http://www.infoq.com/cn/news/20 ... -
狼的精神
2011-09-28 23:05 980在人类心目中的狼 凶残 ... -
JDK中的设计模式
2011-09-24 21:16 669http://stackoverflow.com/questi ... -
系统日志分析脚本
2011-09-24 21:32 4045http://bbs.chinaunix.net/thread ... -
成功说服别人的20个技巧
2011-08-21 23:42 694转自:http://www.shanghaisc. ... -
为什么群体规范扼杀创造力
2011-08-21 23:32 897转自:http://article.yeeyan. ... -
Git GitHub入门
2011-08-21 19:01 772参看: GitHub和Git配置 http://artori. ... -
提问的智慧
2011-08-19 17:20 577... -
MySQL-十大工具
2011-09-24 21:14 906转自:http://tech.it168.com/a2011/ ... -
不要成为工具的奴隶
2011-08-07 11:38 801转自:http://daiyuwen.freeshell.or ...
相关推荐
骑士赛马问题是一个经典的计算机科学优化问题,源于数学和逻辑思维的挑战,它与实际的棋盘游戏中的骑士移动方式有关。在这个问题中,目标是找到一条路径,使得骑士能够以最少的步数到达棋盘上的其他所有位置。在传统...
田忌与齐王赛马,双方各有n匹马参赛(n),每场比赛赌注为1两黄金,现已知齐王与田忌的每匹马的速度,并且齐王肯定是按马的速度从快到慢出场,现要你写一个程序帮助田忌计算他最好的结果是赢多少两黄金(输用负数...
田忌赛马问题田忌赛马问题田忌赛马问题田忌赛马问题田忌赛马问题
"赛马问题" 本文将围绕"赛马问题"进行详细的分析和解释,从而生成相关的知识点。 问题一:赛马问题 在这个问题中,两组选手正在准备比赛,采用三局两胜制。要使第二组获胜,需要安排合适的比赛次序。这里需要考虑...
田忌赛马问题算法设计 田忌赛马问题是一个经典的算法设计问题,问题描述为:国王 A 和国王 B 都拥有 N 匹马,每匹马都有其速度,两人进行 N 场比赛,每次比赛双方各出一匹马,每匹马只能比一次。国王 A 通过某种...
1. **合理安排时间**:本教学设计的核心是教授学生如何通过合理规划和优化步骤来节省时间,这是解决沏茶问题、烙饼问题和田忌赛马问题的关键。在日常生活中,我们常常面临多任务并行的情况,如何在有限的时间里高效...
在四年级数学上册的第8单元数学广角中,我们深入探讨了“优化8.3田忌赛马问题”,这是一个结合历史故事与数学策略的经典案例。教学反思是教师对教学过程的深度思考,旨在提升教学质量,让学生更好地理解和应用所学...
最新人教版四年级数学上册《田忌赛马问题》课时练习--.pdf
时优化田忌赛马问题PPT学习教案.pptx
输入n[1, 100]组田忌和齐威王的马的速度,使用贪心法求田忌胜出的最多盘数(赢局数—输局数,平局数不算分),设计贪心策略,实现程序。 输入:组数n[1, 100],田忌和齐威王每组马的速度,每一组包含两个正整数,...
2014四上第八单元赛马问题课件3.ppt
本文实例讲述了Golang算法之田忌赛马问题实现方法。分享给大家供大家参考,具体如下: 【田忌赛马问题】 输入: 输入有多组测试数据。 每组测试数据包括3行: 第一行输入N(1≤N≤1000),表示马的数量。 第二行有N个...
最新人教版四年级上册数学《赛马问题》同步练习--.pdf
新人教版四年级上册数学 第3课时 赛马问题 重点习题练习复习课件.pptx
本文将通过Mathematica软件解决田忌赛马问题,使用编程语言来模拟和解决实际问题。 问题描述 田忌赛马是一则古代中国的典故,说的是战国时代的齐王与其大将田忌赛马。双方约定各出上、中、下三个等级的马匹进行...
古时候,国王 A和国王 B 都十分热爱赛马运动。他们分别有 N匹马,他们知道自己和 对手每只马的速度。两人进行 N 场比赛,每次比赛双方各出一匹马,每匹马限比一次。国 王 A通过某种特殊途径,已预先打探到了国王 B ...
总之,这个Java实现的渊子赛马问题是一个很好的学习实例,对于提升对动态规划和回溯算法的理解,以及提高编程技巧都非常有帮助。通过深入研究源码,我们可以更好地掌握这些问题解决策略,并将其应用到实际项目中。
2. **逻辑推理**:田忌赛马问题鼓励学生进行逻辑推理,理解每种可能的组合及其结果。通过对所有可能的应对策略进行分析,找出最优解,学生能够训练自己的逻辑思维能力。 3. **表格法**:表格是解决问题的有效工具,...
### 高级人工智能博弈——田忌赛马问题解析 #### 一、问题背景与定义 在博弈论中,“田忌赛马”是一个经典的案例,它不仅体现了策略的重要性,还涉及到了混合策略纳什均衡的概念。根据题目描述,该案例讲述的是...