牛客66道程式設計題 跳台階

2021-09-26 15:17:43 字數 897 閱讀 8454

乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法(先後次序不同算不同的結果)。

當只有1個台階時,只有一種跳法,那就是1。

當有2個台階時,則有兩種跳法,分別是1+1和2。

當有3個台階時,則有3種跳法,分別是1+1+1,1+2和2+1。

當有4個台階時,則有5種跳法,分別是1+1+1+1,1+1+2,1+2+1,2+1+1和2+2。

當有5個台階時,則有8種跳法

…以此類推,則有如下的規律

設階梯數為number,跳法為way

number0=1,way0=1

number1=2,way2=2

number2=3,way3=3=way1+way2

number3=4,way4=5=way2+way3

number4=5,way4=8=way3=way4

…所以這道題歸根到底是斐波那契數列問題,這裡用的是循壞迭代法來解決這個問題。

class

solution

:def

jumpfloor

(self, number)

:# write code here

f0=1 f1=

2 a=[1

,2]if number==1:

return f0

if number==2:

return f1

else

:for i in

range(2

,number+1)

:1]+a[i-2]

) f0=f1

f1=a

return a[number-

1]

牛客刷題 跳台階

題目 乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 天哪,跳台階都不會寫.依稀記得本科離散好像講過這個題,理解了跳台階的原理就很好寫了,如果直接說讓我寫乙個斐波那契數列,那我肯定還是可能寫的.跳台階的話首先知道n 1時,k 1,n...

牛客66道程式設計題 替換空格

class solution s 源字串 defreplacespace self,s write code here return s.replace 20 class solution s 源字串 defreplacespace self,s write code here s list s 把...

牛客網 跳台階

題目 1.乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法。2.乙隻青蛙一次可以跳上1級台階,也可以跳上2級 它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。思路 斐波那契數列問題,只有一階時,跳法f 1 1 有兩階時,跳法f 2 2 第三階開始...