脑力风暴之小毛驴历险记(1)----好多胡萝卜(上)

来源:互联网 发布:运营美工表情包 编辑:程序博客网 时间:2024/06/09 15:46

  

听说有好多胡萝卜 

    ---------------

     从前有一头叫做哈斯卡的小毛驴,它勤劳而善良,快乐又聪明.有一天小毛驴听说一千公里外的兔子国胡萝卜绝收了.心地善良的哈斯卡决定将自己今年收获的胡萝卜捐给兔子国.由于不信任红十字会,所以它决定亲自穿过一千公里的沙漠,将自己的三千根胡萝卜驮运到兔子国去.可是小毛驴也是驴,也要吃东西,每走一公里就不得不吃掉一根胡萝卜,而且它还是个孩子,每次最多就能驮一千根胡萝卜,怎样才能将自己的胡萝卜最多的留给兔子们呢?

    首先,小驴不可能带1000胡萝卜直接奔向兔子国,这样到最后不仅一个胡萝卜没带过去,没运送的2000胡萝卜也会在没人的角落默默晒成萝卜干.

    其次,小驴不可能拿出个小棒棒身手一挥,于是奥特曼附体,一下驼起3000胡萝卜,并且一口气走了1000公里,因为这里是天朝不是日本.

    然后,小驴也不可能投箸于席,奋袂而起,半日行军一千里.

    最后,小驴更不会装傻卖萌:"啥是胡萝卜啊?"

    于是,哈斯卡现在陷入了思考。
  

    小毛驴的爆发

   --------------

    小学时候曾经遇到过这样的数学题:

    AB两人分别从甲乙两地同时出发相向而行,甲乙距离为L,而AB两个人的速度为X1,X2,出发时,甲旁边有一条小狗以大于X1,X2的速度X3向乙跑去,遇到乙时候迅速返回再向甲跑去,遇到甲再折回跑向乙,如此反复,问: 甲乙两人相遇时,小狗一共跑了多少距离? 初一看觉得这个问题貌似非常复杂,其实解决这个问题的关键在不要纠结于每次小狗折回奔跑的距离的变化,而要抓住实质性的东西,即: 小狗恒定的速度和奔跑时间.

    小驴运胡萝卜的问题和上面这个问题有异曲同工之妙,小驴每公里吃一根胡萝卜,所以小驴最终剩下的胡萝卜其实取决于小驴走的路程,所以这个问题其实要求的是有限定条件下的最短路径.这个限定条件毫无疑问就回到了胡萝卜身上。

    再回到胡萝卜的问题上来,小驴每次最多驼1000的胡萝卜,每走1km消耗1根胡萝卜,要想活下命来,它每次走的距离都应在1000根胡萝卜的消耗内,由于出发时候胡萝卜总量大于1000,所以小驴必须走到一个距离出发点为X的地方折回搬剩下的胡萝卜,由此我们得到第一个条件:

      2X<1000km        (a)

 

   显然(a)这个条件是远远不够解决问题的,一共3000根胡萝卜,求的这个问题的关键就在于意识到,既然求最小消耗,就在第一个1000根胡萝卜消耗完的时候第一次最优策略:即完成对3000根胡萝卜的第一次搬迁.让我们对小驴消耗第一个1000根胡萝卜这个过程仔细分析一下:

    1:  小驴出发时候先拖1000根胡萝卜到X点,消耗X根胡萝卜,X点剩余1000-X
    2.   小驴带X根胡萝卜返回出发点, X点剩余1000-2x
    3.   小驴驼1000胡萝卜到X点,消耗X根, X点剩余2000-3X
    4.   小驴带X根胡萝卜返回出发点,X点剩余2000-4X
    5.   小驴驼1000胡萝卜到X点,消耗X根, X点剩余3000-5X.

    由于是在消耗第一个1000根胡萝卜的时候到达X点,即最后剩余应为2000胡萝卜,所以有:

    5X=1000  -->X=200  即小驴应第一次在距离出发点200km的地方停留.
 
   然后小驴从X点继续出发,由于剩余2000根胡萝卜,小驴不能一次驼完,所以与过程以相似,只不过这次小驴只需要两次就可以驼完,假设第二次停留点为Y点:

       1.小驴第一次出发驼1000胡萝卜到Y点,消耗Y根胡萝卜,Y点剩余1000-Y胡萝卜,
       2.小驴第一次返回X点,Y点剩余1000-2Y胡萝卜
       3.小驴第二次出发驼1000胡萝卜,到达Y点,消耗Y根胡萝卜,最后Y点剩余2000-3Y胡萝卜
     
     和过程一相似,此时有等式 3Y=1000, 即:Y=333.3
 
     此时小驴恰好还剩1000胡萝卜,而距离目的地兔子国还有1000-200-333.3=466.3km
     所以这次小驴 可以一次性的驼过去,最后达到兔子国的时候还剩下(1000-466.3)=534根胡萝卜(是否取整取决于小毛驴的胡萝卜是在每开始新的一公里时候吃还是结束新的一公里时候吃,这里取整。)
 

    新的开始 

   --------------

       
     小驴l略为一爆发,困惑到此就已经结束.它成功将最大量的胡萝卜送到了兔子国,收到了兔子国国王的奖励,小驴对子兴奋异常,关于这个奖励我们下次再谈.
     功臣小驴在兔子国四处溜达,不巧遇到了一只叫做程序猿的猴子,程序猿普普通通,不求闻达,快快乐乐的生活着,当然除却偶尔的加班到天亮的悲催。由于小毛驴很高兴,也希望猴子跟着一块分享它的快乐,于是给它讲了它是如何运送胡萝卜的.猴子听后叶惊奇不已,却不料,忽然小驴挠了挠头,一拍大腿,撂了撂蹄子,对猴子喊:
     "HI,大猴子,你不是程序猿嘛,你能用你的程序解决我的难题么?"
     程序猿作为工业革命的新物种,人类科技研究上的一种重新演变,并且拥有无与伦比的耐力、超越时代的智商、横穿社会的苦逼相和低于人类平均寿命的优良特点,听到这个顿时也很感兴趣:“不过今天确实有点晚了,又到了睡觉时间了,明天抽空再来我的方式解决这个问题吧”
     小驴打了打哈欠说:"那就明天吧,今天我也困了,要好好休息了,明天我还要去拿奖励呢"
     猴子连忙问:"国王奖励你了什么啊?"
     小驴四周瞧了瞧,招呼猴子凑过来,然后悄悄在猴子的耳边说:"保密!"
      这你丫的!

    

 

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 数学大题不会做怎么办 小学六年级数学考30分怎么办 六年级数学考了30分怎么办 数学考了30分怎么办 没有给直接领导报到怎么办 小学二年级成绩不好怎么办 初中孩子上课注意力不集中怎么办 学生打架家长争吵老师怎么办 我和我老婆感情危机怎么办 数学作业做得慢怎么办 待转弯区变红灯怎么办 大班健康发生火灾怎么办教案 数字化审图图纸提交不了怎么办 监狱建筑师没电了怎么办 ios短信提示不弹出怎么办 ie游览器图标删了怎么办 电脑上ie卸载了怎么办 打开cad浏览器闪退怎么办 dnf进游戏闪退怎么办 苹果8出现闪退怎么办 手机浏览器老是自动打开软件怎么办 打开手机浏览器为什么是英文怎么办 ie浏览器删除掉了怎么办 手机360浏览器卸载不掉怎么办 大学素质拓展学分不够怎么办 专升本学分不够怎么办 电脑连接无线网络网关禁用怎么办 背部毛孔粗大有黑头怎么办 毛孔变粗大长痘怎么办 皮肤粗糙暗黄毛孔大怎么办 毛孔粗大还有痘印怎么办 高一的不爱上数学怎么办 监狱系统需要体测怀孕怎么办 货运从业资格证年审过期了怎么办 科三线路记不住怎么办? 汽车大灯里面起雾水怎么办 二级重伤对方法庭拒绝赔偿怎么办? 在麦当劳工作收到假钞怎么办 东西湖小学分配太远怎么办 农行k令过期了怎么办 穿军训的鞋捂坏了怎么办