【智力题】烤面包-阿里云开发者社区

开发者社区> 云计算> 正文
登录阅读全文

【智力题】烤面包

简介: 有一个烤面包机可同时放入两片面包,但每次只能烤面包的一面。某人须用双手将面包放入机中,一面烤好后需用双手伸入面包机将其翻面。烘烤一面所需的时间是30秒,翻转一片面包需要的时间是2秒;拿出一片面包置于盘上,或把一片面包从盘上拿起来再放入机中需3秒。
有一个烤面包机可同时放入两片面包,但每次只能烤面包的一面。
某人须用双手将面包放入机中,一面烤好后需用双手伸入面包机将其翻面。
烘烤一面所需的时间是30秒,翻转一片面包需要的时间是2秒;
拿出一片面包置于盘上,或把一片面包从盘上拿起来再放入机中需3秒。
现在盘子上有3片面包,试求烤完所有面包再放到盘子上所需的最短时间。

答案:107秒。
不妨设三片面包序号为A、B、C。
先瞄准大方向:先将A、B烤一面;
    再烤A和C,使得A全烤完,B、C还剩一面未烤。
    最后将B、C一并烤完。
    这样总共烤了三次,耗时为90+秒。
第n秒末的状态:
3   放入A(开始烤)
6   放入B   
33  A烤完一面
35  A翻面(开始烤)
36  B烤完一面
39  拿出B
42  放入C
65  A全烤完
68  拿出A
71  放入B(已翻面)
72  C烤完一面
74  C翻面
101 B全烤完
104 拿出B,C烤完
107 拿出C

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享: