一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶(n为正整数)总共有多少种跳法。
数据范围:
进阶:空间复杂度 , 时间复杂度
进阶:空间复杂度 , 时间复杂度
# f(n) = f(n-1) + f(n-2) + .... + f(2) + f(1) # f(n-1) = f(n-2) + .... + f(1) # f(n) - f(n-1) = f(n-1) => f(n) = 2 * f(n-1) def jumpII(n): if n == 1: return 1 else: return 2*jumpII(n-1) n = int(input()) dp = [0, 1] for i in range(2, n+1): dp.append(2*dp[i-1]) print(dp[n])
n = int(input()) def func(n): if n == 0: return 0 if n ==1: return 1 if n == 2: return 2 if n > 2: return 2*func(n-1) print(func(n))