关注下方公众号,分享硬核知识

作者 | 小K

出品 | 公众号:小K算法 (ID:xiaok365)

01

故事起源

一只小猴子边上有100根香蕉,此地距离它家50米,小猴想搬香蕉回家,但有以下几个条件:

  • 每次它最多搬50根

  • 它每走1米就要吃掉1根

请问小猴最多能把多少根香蕉搬回家呢?

02

初步思考

小猴同学最多只能搬50,那就搬50根往家走。

很快我们就能发现问题,所剩香蕉与行走距离有如下线性关系,当走到家时,香蕉为0。

还记得小K之前写过一篇文章,240L水的问题,240L水。
这两个问题有很大的共同点。把小猴同学想象成一辆车,香蕉想象成油,每前进1米消耗1根。整个过程就是一个运输过程。之所以出现上面的问题,就在于运输效率会线性下降,快到家时,车上只有几根香蕉,但油耗依然不变。

所以还是要采用之前的思路,通过中转来提高运输效率,尽量满载。

03

中转

总共100根,所以转运最多2趟。而且小猴同学不用返回出发地,所以中转地与出发地之间往返3次。

中转是为了下一次能够一次运输完,所以到达中转地之后,香蕉数要小于等于50。
设到中转站x米,则100-3x<=50,x=17米。

所以第一次搬50到17米处,留下16根,再拿17根返回出发地。第二次搬50到中转站剩下33根,总共49根。然后拿上49根回家,还剩下16根。

04

每一米转运

这里借用一下微分的思想,将中转无限分段,假设每隔1米转运1次,那么每一段之间都是往返3次。如果再把这些区间积起来,其实就和上面的思想一样了。

走到16米的地方还有一个特别的点。现在还有52根香蕉,距离家还有34米。此时只拿50根回家,也能搬回16根香蕉。

05

总结

这类问题最直观的第一感觉,就是越到后面阶段,运输效率越低,所以能想到中转。跟现实生活中的快递运输是一样的,快递也会有很多的中转站。之前240L水的问题,有读者同学反馈,到达第3站的地方,还可以在6.25公里的地方卖掉35L,剩60L再继续运输3.125公里,此时卖掉还可以得到更高的收益2275.78125,也感谢这位同学的反馈。中转站的设立是可以无限微分划区间,再用积分来计算,但这样就太复杂了,所以用分段的思想能解决大部分的问题。

本文原创作者:小K,一个思维独特的写手。
文章首发平台:微信公众号【小K算法】。

如果喜欢小K的文章,请点个关注,分享给更多的人,小K将持续更新,谢谢啦!

关注下方公众号,分享硬核知识

关注我,涨知识

原创不易,感谢分享

转发,点赞,在看

往期精彩回顾

逻辑面试题:1+1=2最复杂的打开方式

经典智力面试题:一家人过桥

微软面试题:红帽子与黑帽子

分享给更多朋友,转发,点赞,在看

逻辑面试题:猴子搬香蕉相关推荐

  1. [益智]:猴子搬香蕉

    题目描述 一个小猴子边上有100根香蕉,它要走过50米才能到家,每次它最多搬50根香蕉,(多了就被压死了),它每走1米就要吃掉一根,请问它最多能把多少根香蕉搬到家里.(提示:他可以把香蕉放下往返的走, ...

  2. 【每日一道智力题】之猴子搬香蕉

    题目 一个小猴子边上有100根香蕉,它要走过50米才能到家,每次它最多搬50根香蕉,(多了就被压坏了),它每走1米就要吃掉一根,请问它最多能把多少根香蕉搬到家里.(提示:他可以把香蕉放下往返的走,但是 ...

  3. 猴子搬香蕉(算法入门题目005)

    题目 A 地有一堆香蕉,共 w 只. 一只猴子要把香蕉从 A 地运输到 B 地. 两地相距 s 里. 猴子每次最多只能背 c 只香蕉. 无论背多少香蕉(甚至不背),猴子每走 1 里路,会吃掉 1 只香 ...

  4. 猴子搬香蕉Java实现,儿童编程游戏CodeMonkey,让你的小猴子不停地吃香蕉

    关于儿童编程游戏,极客爸爸在之前的文章也有所介绍.而今天向大家分享的,是一款名叫CodeMonkey的游戏.相信关注这方面的朋友对这个产品并不陌生,在上月,CodeMonkey完成了150万美元的种子 ...

  5. 猴子搬香蕉Java实现_趣味算法:猴子搬香蕉问题

    在博客园一篇文章末尾看到一个有趣的数学问题,据说是小学4年级的题目,摘引如下: 一只小猴摘了300个香蕉,需要搬回家,每次最多搬100个.小猴离家100米,它每走1米,都需要吃掉1个香蕉来补充能量,请 ...

  6. 兔子搬萝卜  猴子搬香蕉  算法实现

    一只小兔子有100根胡萝卜, 它要走50米才能到家, 每次它最多搬50根胡萝卜, 而每走1米就要吃掉1根胡萝卜, 请问它最多能把多少根胡萝卜搬到家里? 如果有125根胡萝卜?200根胡萝卜?如果负重1 ...

  7. 【C++】人工智能实验一 猴子摘香蕉/传教士与野人(含完整代码与状态迁移图)

    文章目录 一.猴子摘香蕉问题 1.问题描述 2.解题思路 3.实验结果及分析 实验结果一 实验结果二 实验结果三 4.实验结果 5.实验代码 二.传教士(牧师)与野人问题 1.问题描述 2.实验步骤 ...

  8. 用软件构造的思维理解猴子摘香蕉问题

    背景简介/问题描述 一个房间里,天花板上挂有一串香蕉,有一只猴子可在房间里任意活动(到处走动,推移箱子,攀登箱子等).设房间里还有一只可被猴子移动的箱子,且猴子登上箱子时才能摘到香蕉,问猴子在某一状态 ...

  9. JAVA语言写的人工智能小实验——猴子摘香蕉

    背景简介/问题描述 一个房间里,天花板上挂有一串香蕉,有一只猴子可在房间里任意活动(到处走动,推移箱子,攀登箱子等).设房间里还有一只可被猴子移动的箱子,且猴子登上箱子时才能摘到香蕉,问猴子在某一状态 ...

  10. 猴子摘香蕉问题-人工智能模拟

    题目: 利用一阶谓词逻辑求解猴子摘香蕉问题:房内有一个猴子,一个箱子,天花板上挂了一串香蕉,其位置如图1所示,猴子为了拿到香蕉,它必须把箱子搬到香蕉下面,然后再爬到箱子上.请定义必要的谓词,列出问题的 ...

最新文章

  1. 20165201 实验五 网络编程与安全
  2. ACM入门之【最短路】
  3. css箭头超链接,css超链接
  4. boost::interprocess::basic_vectorstream用法的测试程序
  5. try.dot.net 的正确使用姿势
  6. 匿名内部类与Lambda表达式
  7. 遇到一个把.o文件strip后出现的奇怪问题
  8. Windows平台安装dlib方法汇总
  9. 【摘要】抽取式摘要:TextRank和BertSum。
  10. 基于AVR单片机及无线收发模块的脉搏监测系统设计
  11. 软工文档-项目开发计划
  12. LCD12864图片字模生成
  13. ps快捷键 拿走不谢*小Lemon送你们的
  14. 电脑桌面图标有阴影怎么办
  15. convexity and concavity(凸面和凹面)
  16. 如何获取微信公众号关注页链接
  17. 磁盘占用率100%——多番尝试
  18. matlab画图五角星标记,Matlab---画图线型、符号及颜色
  19. 部分特定领域的信息化检测管理要求和获认可机构目录
  20. 【NLP】文本数据分析文本特征处理文本数据增强

热门文章

  1. stm32制作CAN适配器2--兼容使用周立功上位机
  2. 在ensp中配置交换机interface GigabitEthernet 1/0/1报错
  3. win10 uwp 商业游戏
  4. TypeScript keyof 用法
  5. 微信小程序之自定义计时器
  6. 超键,候选键,主键,外键
  7. 《站在巨人的肩膀上-英语交流会有感》
  8. Cyclone IV E系列介绍
  9. python浪漫代码表白npy_【师大表白墙】表白wdl小姐姐,一眼看过去就记住的女孩子,笑起来时眼睛里有星星在闪烁~...
  10. 使用Hexo + Gitee Pages搭建个人博客