题解 | #跳台阶#

跳台阶

https://www.nowcoder.com/practice/bfb2a2b3cdbd4bd6bba0d4dca69aa3f0

'''
#方法1递归:
def func(n):
    if n==1:
        return 1
    elif n==2:
        return 2
    else:
        return func(n-1)+func(n-2)
while 1:
    try:
        n=int(input())
    except EOFError:
        func(n)
        break
print(func(n))
'''
#方法2--数组:
def func2(n):
    if n==1:
        print(1)
    elif n==2:
        print(2)
    else:
        dp=[1]*(n+1)
        dp[0]=1
        dp[1]=1
        dp[2]=2
  #1,1,2,1  n=3  (3,4)
        for i in range(3,n+1):
            dp[i]=dp[i-1]+dp[i-2]
        print(dp[n])


while 1:
    try:
        n=int(input())
        func2(n)
    except EOFError:
        break

全部评论

相关推荐

03-15 10:59
已编辑
美团_后端开发(实习员工)
爱写代码的菜code...:哎,自己当时拿到字节offer的时候也在感叹终于拿到了,自己当时最想去的企业就是字节,结果还是阴差阳错去了鹅厂。祝uu一切顺利!!!
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务