关于飞机绕地球飞行一圈的加油问题

已知:

每个飞机只有一个油箱,飞机之间可以相互加油,注意是相互,没有加油机,一箱油可供一架飞机绕地球飞半圈。

问题:

为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机?

A:所有飞机从同一机场起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场

B:所有飞机从同一机场,同一方向起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场

下面就是我给出的答案:至少需要三架飞机。(两架飞机是显然不可能的,这个都不用说什么)。前提假设当然是:加油、掉头、降落和起飞的时间分别是0。

加油方案和步骤分别是:

  1. 三架飞机同时从机场O起飞,方向为顺时针,此时三架飞机的油量分别是:A: 1, B: 1, C: 1。
    在这里插入图片描述
  2. 当A飞行至半圈的1/4位置时,此时飞机的油量分别是:A: 3/4, B: 3/4, C: 3/4。此时C分别给A和B加满油,三架飞机当前油量分别是:A: 1, B: 1, C: 1/4。C返回机场。A、B继续向前飞行。
    在这里插入图片描述
  3. 当A飞行至半圈的1/2位置时,此时C已经返回机场,三家飞机此时油量分别是:A: 3/4, B: 3/4, C: 0。此时B给A加满油,C加满油,此时三架飞机的油量分别是:A: 1, B: 1/2, C: 1。然后B返回机场,A继续向前飞行。
    4.
  4. 当A飞行至半圈位置时,B已经返回机场并且加满了油(假设加油时间为0),此时,B和C沿逆时针方向飞行,三架飞机当前油量分别是:A: 1/2, B: 1, C: 1。A继续向前飞行。
    在这里插入图片描述
  5. 当A飞行至另外半圈的1/4位置时,三架飞机剩余油量分别是:A: 1/4, B: 3/4, C: 3/4。此时,C给B加满油。此时三架飞机油量分别是:A: 1/4, B: 1, C: 1/2。C返回机场,B和A继续向前飞行。

在这里插入图片描述

  1. 当A飞行至另外半圈的1/2位置时,C已经返回机场,A和B相遇,此时三架飞机剩余油量分别是:A: 0, B: 3/4, C: 0。B给A加1/4的油,三架飞机剩余油量:A: 1/4, B: 1/2, C: 1。C加满油从机场逆时针飞出,B返回机场,A继续向前飞行。

在这里插入图片描述
7. 当A飞行至另外半圈的3/4位置时,A和C相遇。此时三架飞机的油量分别是:A: 0, B: 1/4, C: 3/4。C给A加1/4的油,此时三架飞机的油量分别是:A: 1/4, B: 1/4, C: 1/2。C掉头返回机场,A和B继续向前飞行。

在这里插入图片描述

  1. 三架飞机顺利回到机场!

在这里插入图片描述

原文链接:https://blog.csdn.net/hinyunsin/article/details/6632062

假设需要出动 N 架飞机才能保证至少有一架飞机地球一圈回到起飞机场。我们可以考虑将地球分成 N 段,每段需要一架飞机一圈。为了方便起见,我们可以将每段长度都设为 1。 现在我们把 N 架飞机排成一列,用 1 表示每架飞机,用 0 表示两架飞机之间的间隔。例如,当 N=4 时,排列方式可以是 10101。这种排列方式表示第 1 架、第 3 架、第 5 架飞机需要一圈。 接下来考虑如何在这些飞机之间相互加油,使得至少有一架飞机地球一圈回到起飞机场。我们可以将排列方式连成一个环,即在最后一架飞机后面接上第一架飞机。例如,当 N=4 时,排列方式可以是 10101,连成的环为 101011。 我们发现,如果存在一种排列方式,使得在连成的环上,每相邻两架飞机之间的间隔都是偶数,那么我们就可以通过相互加油的方式,使得所有飞机都能地球一圈回到起飞机场。这是因为,如果每相邻两架飞机之间的间隔都是偶数,那么我们可以把所有飞机分成若干组,每组都包含相邻两架飞机之间的一段距离。由于每段距离的长度都是偶数,我们可以用一架飞机一圈,同时给这一组中的其他飞机加油,使得它们也能地球一圈回到起飞机场。这样,我们就可以依次处理每组飞机,最终使得所有飞机都能地球一圈回到起飞机场。 因此,我们只需要找到一种排列方式,使得在连成的环上,每相邻两架飞机之间的间隔都是偶数。不难发现,这种排列方式当且仅当 N 为偶数时存在。因此,当 N 为偶数时,只需要出动 N 架飞机即可保证至少有一架飞机地球一圈回到起飞机场;当 N 为奇数时,需要出动 N+1 架飞机才能保证至少有一架飞机地球一圈回到起飞机场。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值