侯先生爬楼梯
类型:函数
描述
侯先生每天都会爬楼梯锻炼身体,他爬楼梯的上跨步长有且仅有两种,或者一次上跨一级,或者一次上跨两级。
有一天侯先生想弄明白一个很难的问题:从最下面的平台开始到顶端的第n级一共有多少种走法呢?
例如n是2时,有两种走法:直接从平台上跨两步到第2级,或者从平台跨一步到1级再跨一步到第2级。
请你帮帮侯先生,给你n(1<=n<40)的值,你帮忙计算并输出有多少种爬到顶端的方法。
输入格式
输入n的值,n是1到40之间的整数。
输出格式
输出一共有多少种从平台到第n级台阶的走法。
示例1
输入:3
输出:3
示例2
输入:5
输出:8
参考代码
一个简单的经典递归问题。
def upstrs(n):
if n==1:
return 1
elif n==2:
return 2
else:
return upstrs(n-1)+upstrs(n-2)
n=int(input())
print(upstrs(n))