我来出个赛马题# Programming - 葵花宝典
i*h
1 楼
这是个open problem,部分是我自己想的,标准答案我也没有,和大家讨论一下.
25匹马, 跑速各不相同, 一次最多可以5匹比赛, 每次得到排名1,2,3,4,5,
写一个程序,找出最快的5匹马.
比如有一个 C/C++ function:
int race5horses(horse h[]);
所有的 horse comparison 只能通过这个 function 进行,
而且一次只排序 h[] 的前5个元素
(当然这个函数知道所有马的速度)
在这个函数外不能使用马速的任何信息.
函数里有一个 static int count = 0; 存放函数被调用的次数
当函数结束时要返回这个值
程序的目的是用最少的调用race5horses()找到最快的5匹马.
写的有点乱,不知道大家看明白没有 :-)
25匹马, 跑速各不相同, 一次最多可以5匹比赛, 每次得到排名1,2,3,4,5,
写一个程序,找出最快的5匹马.
比如有一个 C/C++ function:
int race5horses(horse h[]);
所有的 horse comparison 只能通过这个 function 进行,
而且一次只排序 h[] 的前5个元素
(当然这个函数知道所有马的速度)
在这个函数外不能使用马速的任何信息.
函数里有一个 static int count = 0; 存放函数被调用的次数
当函数结束时要返回这个值
程序的目的是用最少的调用race5horses()找到最快的5匹马.
写的有点乱,不知道大家看明白没有 :-)