# 這道題是遞歸的思想,想要爬上第n臺階,# 1,能夠經過n-1層上去,2,經過第n-2層上去# 所以f(n) = f(n-1) + f(n-2)class Solution: def climbStairs(self, n: int) -> int: # 前兩層比較特殊,須要自行定義。 if n == 1 or n == 2:return n # 定義兩個數字,用來保存f(n-1) f(n-2) # num_1表示f(n-2),num_2表示f(n-1) num_1,num_2 = 1,2 sum = 0 # 經過for循環從第三層臺階計算到第n層臺階 for index in range(2,n): # print(sum,num_1,num_2) sum = num_1 + num_2 # 這裏注意num_1和num_2表示的含義。 num_1 = num_2 num_2 = sum return sum