田忌赛马

    我们都知道田忌赛马吧!它用 “下--上“,‘中--下’,”上--中“的策略赢得了比赛,得到很多人的赞许,但是现在又有一个问题:我们有36匹马,6个跑道,每一趟可以选出3匹跑的最快的马,那么最少几次可以选出这36匹马中跑的最快的3匹呢?

    我看到的时候首先的思路是:

   (1)6次:将36匹马分为6组,选出每组的前三名,这样会留下18匹。

   (2)3次:上次的18匹再分别赛,选出前三名,最终会剩下9匹。

   (3)2次:剩下的9匹赛两次就可以了

    上面总共徐要 6+3+2=11次

这个答案显然是不符合要求的,我分析了一下,问题主要是出在了第二趟,下面我就分析一下次数最少的方法:


最少的次数应该是:

(1)6次(第一趟):分六组,选出每组的前三名

(2)1次(第二趟):从上述六组中选出每组的第一名进行一次比赛,这一次很重要:第一直接晋级(因为它必为跑的最快的马);

(3)1次(第三趟):选出第一名所在组的后两名+第二名所在组的前两名匹马+第三名(1匹马)经行一场比赛,这场比赛的前两名加上直接晋级的一匹刚好选出三匹跑的最快的了。

原因如下:

  1.第二趟中的第一名肯定是跑的最快的(假设是第一组的),这毋庸置疑!但是关于第二和第三名就不好说了。

  2.首先,第二趟比赛中第三名(假设是第三组的)的最多可能为第三名,它所在的组中的其他马肯定不会超过第三。

  3.第二趟比赛中第一名所在的组中第二和第三可能是要找的,第二趟比赛中第二名(假设是第二组的)所在组的前两名可能是要找的,还有一匹马就是第二趟跑第三名的那匹马。

 上述的5匹马再进行一次比赛,选出前两名就行了(第一名在第二趟比赛中已经找到了)

 至此,问题解决了,最终答案是 8 次

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值