題目
1.乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。
2.乙隻青蛙一次可以跳上1級台階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。
思路
斐波那契數列問題,只有一階時,跳法f(1)=1;有兩階時,跳法f(2)=2;
第三階開始就可以分類了,分第一步跳1階和第一步跳2階的情況:
第一步跳一階,後面還剩兩階,因此還有f(2)種跳法;
第一步跳兩階,後面還有一階,因此還有f(1)種跳法;
如果可以算上一次跳3階,那麼跳法再加1。
到第四階時,規律就可以總結出來了:
第一步跳一階,後面還剩3階,f(3)種跳法
第一步跳兩階,後面還剩2階,f(2)種跳法
第一步跳三階,後面還有1階,f(1)種跳法
加上最後的第一步四階。
1.f(n)=f(n-1)+f(n-2)
2.f(n)=f(n-1)+f(n-2)+...+f(2)+f(1)+1
**1
# -*- coding:utf-8 -*-
class solution:
def jumpfloor(self, number):
floor1=1
floor2=2
floor=0
if number==1:
floor=1
if number==2:
floor=2
if number>2:
i=0while i**2
# -*- coding:utf-8 -*-
class solution:
def jumpfloor(self, number):
floor1=1
floor2=2
if number==1:
floor=1
if number==2:
floor=2
fn=if number>2:
i=2while ifloor=sum(fn)+1
i+=1
return floor
# write code here
if __name__=="__main__":
a=solution()
print(a.jumpfloor(4))
print("aaa")
跳台階 牛客網(C 實現)
一 題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 二 程式設計思路 一開始想著先列出前幾級台階的跳法,看看是否能發現什麼規律。1級台階 跳1級 1種跳法 2級台階 跳1級 跳2級 2種跳法 3級台階 1級 1級 1級 1...
跳台階 牛客網面試題
乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 當每次只跳一級台階時,只有一種情況 當每次只跳兩級台階時,也是只有一種情況 當又跳一級台階又跳兩級台階時,我們可以假設第一步跳一級台階,那麼後面的所有的跳法為f n 1 當第一步跳兩級...
劍指Offer 牛客網 跳台階
題目描述 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 如下 遞迴法 public class solution return jumpfloor target 1 jumpfloor target 2 迭代法 public cl...