关于一道微软面试题的思考

  条件:

1.一架飞机加满油能绕地球飞半圈。

2.飞机之间可以互相加油。

3.只有一个机场。

问:要多少架飞机起飞才能保证一架飞机绕地球飞一圈?

(所有飞机都必须安全降落,不考虑加油时间) 

 

我想出来的解决办法:

设地球周长为S,三架同时起飞,行到1/8S处,一架返航,这时候它消耗了1/4的油,还需要1/4的油返航,

所以它可以给其他每个飞机加1/4的油。 这时候其他两架飞机的油箱变满。
第二步,行至1/4S处,这时候两架飞机各消耗了1/4的油,其中一架返航需要2/4的油,它可以提供给另外

一架飞机1/4的油。这架飞机的油箱又 变满,它已经航行了地球周长的1/4 ,因此它可以一直行驶到地球

周长的3/4处。
若前面两架飞机反方向行驶,刚好又可以给它加上油,则他可以完成全程。

 

有一个朋友提出了疑问,虽然题中并没有给出一个机场不允许两架飞机同时起降的条件,但是为了保证

安全,机场一般只允许一架飞机同时起降。不然,条件中为什么给出“只有一个机场“的条件呢。

那么要求不同的飞机只能在不同的时刻起飞。于是我打算推翻我的答案。

可是我忽然意识到,若不同时起降,后起飞的时间如何才能追上先起飞的飞机并给它加油呢?

微软到底在考试人什么?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值