世界500強企業面試題:猴子吃香蕉!這是人能想出來的答案?


題目:

有只猴子在樹林里采了100根香蕉,堆成一堆。猴子家離香蕉堆50米,猴子打算把香蕉背回家,每次最多背50根。可是,猴子嘴饞,每走一米就要吃一根香蕉。問猴子最多能背回幾根香蕉?


 

分析和答案:

答案1:25(返回走的時候沒吃香蕉)

猴子從香蕉堆帶50根香蕉走到離家25米處,吃完25根,放下剩下的25根香蕉,原路折返!再帶50根香蕉回家,此時走到離家25米處一共有50根香蕉了,再走25米繼續吃掉25根,所以,還剩下25根香蕉!

 

答案2:16 (返回走的時候也吃香蕉)

分析1:在剩余香蕉大於50根之前,猴子每走1米要吃3根香蕉,因為他走1米吃掉1根后,還得往回走1米抱剩下的香蕉,這又得吃1根,然后再回到原位置需要走1米,再吃1根,所以實際上猴子走1米需要消費3個香蕉。

當走到17米的時候,猴子一共吃了17*3=51個香蕉,還剩49,這樣猴子就可以一次性搬回家了,不用往回去搬香蕉,離家還剩下50-17=33米,需要吃33根香蕉,所以到家時還剩下49-33=16根。

————————

分析2:將50米分兩段,前段為X米,剩余的為50-X米,最終搬回家的香蕉數為Z根。稍作計算可知,將全部香蕉搬至X處時,還剩余100-3X支香蕉。

要能使剩余香蕉能一次性全部搬回家,則有100-3X<=50 (1),最終能搬回家的香蕉數為Z=100-3X-(50-X)=50-2X (2)。綜合(1)(2)兩式可得當X=17時,Z max=16(根)。


突然覺得思維邏輯這種東西可能真的需要一點天賦~~~


 

不管你是轉行也好,初學也罷,進階也可,如果你想學編程,進階程序員~

【值得關注】我的 編程學習交流俱樂部!【點擊進入】

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM