骆驼和香蕉的问题

[复制链接]
查看11 | 回复3 | 2009-7-15 23:09:30 | 显示全部楼层 |阅读模式
总共有3000只香蕉,有一只骆驼每一次只能带1000只香蕉,每1公里吃1只香蕉,没有香蕉吃它是不肯走的,A-B 点距离1000公里,如果这个骆驼要从A点到B点有什么办法可以让更多的香蕉剩下来?如何做到?如何最有效率的运最多的香蕉到B点?

回复

使用道具 举报

千问 | 2009-7-15 23:09:30 | 显示全部楼层
首先需要明确思考的基本原则:让吃了香蕉的骆驼在走路的时候尽量多负重,或者说让它吃香蕉时身边的香蕉保持最多。最直接的算法是让它吃一只香蕉,然后看它能把所有剩余的香蕉运多远。比如开始3000只香蕉需要运2.5个往返也就是5个单程,所以一只香蕉只能让它运0.2公里。之后再吃下一只香蕉,重复此过程。 另外需要和考官明确一点:吃香蕉这一动作是瞬时还是连续过程?或者说骆驼是吃完香蕉再走路还是边吃香蕉边走路?这可能会造成最后结果有少量出入、--------------------------先假设吃香蕉的过程是瞬时的,而且是先吃完香蕉再走路,可有如下过程:第一次从0公里推进至0.2公里,往返两次半,总行程1公里,消耗1只香蕉第二次从0.2...
回复

使用道具 举报

千问 | 2009-7-15 23:09:30 | 显示全部楼层
正如skierr的答案,问题一和问题二最多可以剩下2000只香蕉,方法就是让骆驼驮1000只香蕉去B点,沿途吃完。让2000只香蕉剩下来,在A点。另外,我回答一下问题三啊。最有效率的方法是(可能有些残酷):考虑到骆驼的运输效率确实太低,因此必须把骆驼卖了,得来的钱用来空运香蕉,这样3000只香蕉可以全部快速运到B点楼主一定要采纳啊,答题一...
回复

使用道具 举报

千问 | 2009-7-15 23:09:30 | 显示全部楼层
这样子第一步,骆驼先驮1000公斤起程,每隔一公里放下4根香蕉,再加上自身消耗一公里1根的,这样可以走1000/5=200公里,回来的时候就靠吃前面放下4根香蕉中的一根,这样第一次行程结束,200公里的路段,每公里都有三根香蕉。第二步,骆驼先驮1000公斤起程,先走的200公里消耗第一次行程放下的香蕉(这时候每公里还剩两根了),过了200公里后继续前...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行