牛客網 跳台階

2021-08-19 17:46:17 字數 1281 閱讀 5307

題目

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...