'''
跳台阶,一次 1 or 2步
变态跳台阶,一次1, 2,n阶
'''
class Solution:
def Fibonacci(self, n):
if n <= 2:
return n
dp =[0]*n
dp[1] = 1
dp[2] = 2
for i in range( 3, n ):
dp[i] = dp[i-1] + dp[i-2]
print("跳台阶:",dp[n-1])
return dp[n-1]
def FibonacciII(self, n):
dp =[1]*n
for i in range(1,n):
for j in range( i ):
dp[i] = dp[i] + dp[j]
print("变态跳台阶:",dp[n-1])
return dp[n-1]
w = Solution()
w.Fibonacci(3)
w.FibonacciII(3)