乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法(先後次序不同算不同的結果)。
跳上1級台階:1種
跳上2級台階:2種
跳上3級台階: …
…跳上n級台階:
即 f(n) = f(n-1) + f(n-2)
看到這裡你肯定會發現這其實就是「斐波那契數列」的變種,不了解的可以看我這篇文章 牛客-劍指offer 07 | 斐波那契數列,直接上**:
# -*- coding:utf-8 -*-
class
solution
:def
jumpfloor
(self, number)
:# write code here
if number ==1:
return
1elif number ==2:
return
2else
: n =
0 n1 =
1 n2 =
2for i in
range(3
, number+1)
: n = n1 + n2
n1 = n2
n2 = n
return n
劍指offer 08 跳台階
乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 於本題,前提只有 一次 1階或者2階的跳法。a.如果兩種跳法,1階或者2階,那麼假定第一次跳的是一階,那麼剩下的是n 1個台階,跳法是f n 1 b.假定第一次跳的是2階,那麼剩下的是...
劍指offer 08 跳台階
題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 時間限制 c c 3秒,其他語言6秒 空間限制 c c 64m,其他語言128m 題目示例 示例1 輸入 1 返回值 1 示例2 輸入 4 返回值 5解法分析我記得這好像是一...
劍指Offer 08 跳台階(遞推)
乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 這是一道經典的遞推題目,你可以想如果青蛙當前在第n級台階上,那它上一步是在 呢?顯然,由於它可以跳1級台階或者2級台階,所以它上一步必定在第n 1,或者第n 2級台階,也就是說它跳上n...