最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【ROSALIND】【練Python,學生信】11 斐波那契數(shù)列與兔子繁殖問題之會死的兔子

2019-02-07 17:18 作者:未琢  | 我要投稿

如果第一次閱讀本系列文檔請先移步閱讀【ROSALIND】【練Python,學生信】00 寫在前面 ?謝謝配合~

題目:

根據(jù)斐波那契數(shù)列計算兔子的繁殖情況,兔子會死亡

Given: Positive integers n<100 and m<20.

所給:正整數(shù)n和m,n<100,m<20。

Return: The total number of pairs of rabbits that will remain after the n-th month if all rabbits live for m months.

需得:經(jīng)過n個月后共有多少對兔子,假設兔子的壽命為m個月。

?

測試數(shù)據(jù)

6 3

測試輸出

4

?

背景

斐波那契數(shù)列是以兔子繁殖為例子引入的數(shù)學式,推導中滿足的假設如下:

1.?????? 第一個月有一對新生兔子

2.?????? 出生后兔子需要再長一個月才可以繁殖,且之后每個月都會繁殖

3.?????? 每個月每對成年兔子可以生出一對小兔子

4.?????? 兔子都不會死,也不會停止繁殖

斐波那契數(shù)列體現(xiàn)了遞推的思想,滿足公式? ? ? ? ? ? ? ? ? ?

(F1=F2=1)

? ? ? ?自然界中很多現(xiàn)象體現(xiàn)斐波那契數(shù)列,如花瓣、莖葉排列等,在物理、化學等領(lǐng)域也多有應用。

?

思路

與原始的斐波那契數(shù)列相比,本題的變化是兔子經(jīng)過一定時間后會死亡,如下圖圖示:

兔子壽命為三個月時數(shù)量與月份的關(guān)系


圖中兔子只能活三個月,因此每個月需要減去三個月前出生的兔子。我以兔子開始死亡的第四個月為界限分為三個情況分別考慮:

第四個月以前,沒有兔子死亡,與原始的斐波那契數(shù)列相同;

第四個月,第一個月的一對兔子生下一對小兔子,其后死亡,從原數(shù)列中減去1;

第四個月后,每個月都在原數(shù)列中減去三個月前出生的兔子。

該方法可推廣為:

適用于任意m、n


代碼

i = 3

n = 6

m = 3

f = [0, 1, 1]

s = 0

while i <= n:

??? if i <= m:

??????? s = f[i-1] + f[i-2]

??? elif i == m+1:

??????? s = f[i-1] + f[i-2] - 1

??? elif i > m+1:

??????? s = f[i-1] + f[i-2] - f[i-m-1]

??? i += 1

??? f.append(s)

print(f[n])


【ROSALIND】【練Python,學生信】11 斐波那契數(shù)列與兔子繁殖問題之會死的兔子的評論 (共 條)

分享到微博請遵守國家法律
灵川县| 睢宁县| 临沭县| 巴彦县| 镇安县| 甘孜县| 宾阳县| 梓潼县| 金门县| 池州市| 丹东市| 西丰县| 宁明县| 平昌县| 蒙山县| 桂东县| 尼勒克县| 米泉市| 乃东县| 太仓市| 金堂县| 合江县| 郁南县| 抚顺县| 柯坪县| 霍林郭勒市| 阳春市| 临安市| 宜兰县| 承德县| 遵义市| 青浦区| 晋江市| 神木县| 合肥市| 保定市| 慈利县| 鸡泽县| 荣成市| 察雅县| 麦盖提县|