写点什么

[Day13]-[动态规划] 爬楼梯

作者:方勇(gopher)
  • 2022 年 4 月 12 日
  • 本文字数:336 字

    阅读完需:约 1 分钟

70. 爬楼梯

难度简单 2360 收藏分享切换为英文接收动态反馈

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。

每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?

 

示例 1:

输入:n = 2输出:2解释:有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶
复制代码

示例 2:

输入:n = 3输出:3解释:有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶
复制代码


题解:

func climbStairs(n int) int {   fn := func (n int) int {        if n <= 2 {            return n        }        sum, pre, current := 0, 1, 2
for i := 3; i <= n; i++ { sum = pre + current pre, current = current, sum }
return sum } return fn(n)}
复制代码


用户头像

Dead or Alive. 生存战斗是知识的源泉! 2018.11.08 加入

我是一名SRE哨兵,目前是好大夫基础架构部高级工程师。专注于 SRE,微服务、中间件的稳定性和可用性建设,整体负责好大夫服务治理云平台的设计和搭建!

评论

发布
暂无评论
[Day13]-[动态规划]爬楼梯_LeetCode_方勇(gopher)_InfoQ写作平台