[面试题精选]微软试题

微软试题

1、直线飞行
   一架飞机载满油飞行距离为1,n架飞机最远能飞多远?

就是不是兜圈没有迎头接应的情况,这问题就是n架飞机能飞多远?
存在的极值问题是不要重复飞行,比如两架飞机同时给一架飞机加油同
时飞回来即可认为是重复,或者换句话说就是离出发点越远在飞的飞机
就越少,这个极值条件是显然的,因为n架飞机带的油是一定的,重复
浪费的油就越多。比如最后肯定是只有一架飞机全程飞行,注意全程这
两个字,也就是不要重复的极值条件,所以两架飞机的话肯定是一架给
令一架加满油并使剩下的油刚好能回去,就说第二架飞机带的油耗在3倍
于从出发到加油的路程上,有三架飞机第三架带的油耗在5倍于从出发到
他加油的路程上,所以n架飞机最远能飞行的距离为
  s = 1 + 1/3 + ... + 1/(2n+1)
这个级数是发散的,所以理论上只要飞机足够多最终可以使一架飞机飞到
无穷远,当然实际上不可能一架飞机在飞行1/(2n+1)时间内同时给n-1个
飞机加油。

2、可以迎头接应加油
   一架飞机载满油飞行距离为1/2,最少几架飞机能飞行距离1?

也是根据不要重复飞行的极值条件,得出最远处肯定是只有一架飞机飞行,
这样得出由1/2处对称两边1/4肯定是一架飞机飞行,用上面的公式即可知道
一边至少需要两架飞机支持,(1/3 + 1/5)/2 > 1/4(左边除以2是一架飞机
飞行距离为1/2),但是有一点点剩余,所以想象为一个滑轮(中间一个飞机是
个绳子,两边两架飞机是个棒)的话,可以滑动一点距离,就说加油地点可以在
一定距离内变动(很容易算出来每架飞机加油地点,加油数量等等)

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值