最近室友们在一块的时候偶尔聊聊一些公司的面试题,下面这道飞机绕地飞行的题目觉得比较有意思:
之前没做过类似的智力测试题,我们几个室友还讨论了好长时间,最后我们把最后的答案总结了一下,答案有6、5、7架等等,甚至还有得出没法实现题中想法的答案,相互比较了下,经过总结最终得到了正确答案。
上网核对答案发现,然来此题就是某一年微软的面试题,哎,看来我们平时对此类题目训练太少了,看来以后要经常锻炼智力题咯,嘿嘿!
下面是我们总结的详细解题过程:
_________________________________________________________________________________________________
已知:每个飞机只有一个油箱,飞机之间可以相互加油,注意是相互,没有加油机,一箱油可供一架飞机绕地球飞半圈。
问题:为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机?
____________________________________________________________________________________________________________________________________
解:下面就是我们讨论的结果:至少需要三架飞机;两架飞机是显然不能完成题目的要求,在解题之前有必要把题目的要求加以分析:
要求最少的飞机数,肯定是只能一架飞机绕地一周;
飞机之间空中完成加油,加油的飞机加完油之后要能够回到飞机场O点;
飞机在空中和机场加油时间忽略不计;
加油方案和步骤分别是:假设完成绕地飞行的飞机是顺时针飞行的,每此飞机加满油油量为1,如下图所示:
步骤1:三架飞机同时从机场O顺时针起飞,此时三架飞机的油量分别是:A:1,B:1,C:1;
步骤2:当A、B、C飞行至45时,此时飞机的油量分别是:A: 3/4, B: 3/4, C: 3/4。此时C分别给A和B加满油,三架飞机当前油量分别是:A: 1, B: 1, C: 1/4。C返回机场。A、B继续向前飞行;
步骤3:当A飞行至90度时,此时C已经返回机场,三家飞机此时油量分别是:A: 3/4, B: 3/4, C: 0。此时B给A加满油,C在机场加满油,此时三架飞机的油量分别是:A: 1, B: 1/2, C: 1。然后B返回机场,A继续向前飞行;
步骤4: 当A飞行至180度时,B已经返回机场并且加满了油,此时B和C沿逆时针方向飞行,三架飞机当前油量分别是:A: 1/2, B: 1, C: 1。A继续向前飞行;
步骤5:当A飞行至225度时,B和C飞至315度处,三架飞机剩余油量分别是:A: 1/4, B: 3/4, C: 3/4。此时,C给B加满油。此时三架飞机油量分别是:A: 1/4, B: 1, C: 1/2。C返回机场,B和A继续向前飞行;
步骤6:当A飞行至另外270度时,C已经返回机场, A和B相遇,此时三架飞机剩余油量分别是:A: 0, B: 3/4, C: 0。B给A加2/4的油,三架飞机剩余油量:A: 1/2, B: 1/4, C: 1。C加满油从机场逆时针飞出,A、B均顺时针飞行;
步骤7:当A飞行至315度处,A和C相遇。此时三架飞机的油量分别是:A: 1/4, B: 0, C: 3/4。C给b加1/4的油,此时三架飞机的油量分别是:A: 1/4, B: 1/4, C: 1/2。C掉头返回机场,A和B继续向前飞行,三架飞机顺利回到机场!
当然上面的答案仅供朋友们参考,不一定是最佳的方法,有什么更好的或者是省油的方法可以共享哦!