有36辆赛车,6个跑道,没有计时工具,要想得到最快的前三名,最多要在跑道上进行几次赛车比赛。
其实这个问题将其模型等价成一个6x6方阵(或者二维数组)排序问题。
无论怎么算,首先肯定要先分六组,自行比赛分前后顺序,进行横向排序。进行6次
然后是对每组的第一进行比赛,得到纵向排序。(这里用来区分组别,分别用不同的编码,速度1>a>A>甲>Ⅰ>天)进行1次
紧接着一定注意看:第一组的第四名和后面三组已经无法进去前三名。即这就变成了3x3的矩阵。进行0次
继续分析(因为还能简化):第二组的c前面有b,a还有1都比他速度都快,所以他也进不了前三名。同理,第三组B和C前面有A,a,1都比他快,也进不了前三名。这样之后再看矩阵
这样之后就剩下六个数值了,再进行最后一次比赛就可以知道前三名了。(当然如果再优化,第一名可以不用参加)进行1次
最后把次数相加就是6+1+1 = 8次