题解 | #爬楼梯#

爬楼梯

http://www.nowcoder.com/practice/b178fcef3ed4448c99d7c0297312212d

n = int(input())
# 动规解法
if n < 3:
    print(n)
else:    
    dp = [0] * (n+1)
    dp[1], dp[2] = 1, 2
    for i in range(3, n + 1):
        dp[i] = dp[i-2] + dp[i-1]
    print(dp[n])

# 循环相加解法
if n < 3:
    print(n)
else:
    k1, k2 = 1, 2
    i = 3
    while i <= n:
        k = k1 + k2
        k1, k2 = k2, k
        i += 1
    print(k)

# 递归解法  
def func(n:int):
    if n < 3:
        return n
    else:
        return (func(n - 1) + func(n - 2))
print(func(n))
全部评论
递归解***超时
点赞 回复 分享
发布于 2023-03-25 20:16 广东

相关推荐

10-21 00:37
已编辑
门头沟学院 C++
小浪_Coding:你问别人,本来就是有求于人,别人肯定没有义务免费回答你丫, 有点流量每天私信可能都十几,几十条的,大家都有工作和自己的事情, 付费也是正常的, 就像你请别人搭把手, 总得给人家买瓶水喝吧
点赞 评论 收藏
分享
挥毫自在:想白嫖你呢
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

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