演算法題 猴子吃桃 解

2021-10-03 05:35:24 字數 610 閱讀 3053

剛開始學c語言,在書上看見了道演算法題,嘗試解了下

題目:猴子第一天摘了若干個桃子,當即吃了一半,還不解饞,又多吃了乙個;第二天,吃剩下的桃子的一半,還不過癮,又多吃了乙個;以後每天都吃前一天剩下的一半多乙個,到第10天想再吃時,只剩下乙個桃子了。問第一天共摘了多少個桃子?

思路:通過猴子第十天只剩乙個桃子我們可以得到第九天的,然後繼續從後向前推

(第十天桃子的數量+1)* 2=第九天桃子的數量

(第九天桃子的數量+1)* 2=第八天桃子的數量

(第八天桃子的數量+1)*2=第七天桃子的數量

.

.(第二天桃子的數量+1)*2=第一天桃子的數量

#include void main()

}

執行結果如下:

結果是第一天摘了1534個桃子

然後用for迴圈改寫了一下:

#include void main()

}

猴子吃桃演算法

猴子第一天摘下若干個桃子,當即吃了一半,還不過癮就多吃了乙個。第二天早上又將剩下的桃子吃了一半,還是不過癮又多吃了乙個。以後每天都吃前一天剩下的一半再加乙個。到第10天剛好剩乙個。問猴子第一天摘了多少個桃子?這是乙個很經典的遞迴演算法,只要找到遞迴公式就迎刃而解 第n天桃子總數 第n天桃子總數 2 ...

猴子吃桃演算法

猴子吃桃問題 猴子第一天摘下若干個桃子,當即吃了一半,還不癮,又多吃了一 個 第二天早上又將剩下的桃子吃掉一半,又多吃了乙個。以後每天早上都吃了前一天剩下的一半零一 個。到第 10 天早上想再吃時,見只剩下乙個桃子了。求第一天共摘了多少。程式分析 採取逆向思維的方法,從後往前推斷。下面用了for迴圈...

猴子吃桃問題 php,趣味演算法 猴子吃桃問題

簡明現代魔法 c c 趣味演算法 猴子吃桃問題 趣味演算法 猴子吃桃問題 2010 05 26 猴子第一天摘下若干桃子,當即吃了一半,還不過癮,又多吃了乙個。第二天早上又將剩下的桃子吃掉一半,又多吃了乙個。以後每天早上都吃了前一天剩下的一半零乙個。到第10天早上想再吃時,見只剩下乙個桃子了。求第一天...