爬楼梯
假设你现在正在爬楼梯,楼梯有
n
级。每次你只能爬
输入格式
第一行输入一个整数
输出格式
输出爬到楼梯顶部的方法总数。
样例输入
5
样例输出
8
难点:在利用动态规划过程中,重复计算过多
解决方法:利用列表存储当前计算结果,避免重复计算
代码(Python3+):
def test(num):
global l
if num==0 or num==1:
return 1
if num>1:
if l[num-2]==0:
l[num-2] = test(num-2)
return test(num-2) + test(num-1)
return test(num-1)+l[num-2]
return 0
num = int(input())
l = [int(k-k) for k in range(num)]
print(test(num))