LeetCode70. 爬楼梯Golang版

LeetCode70. 爬楼梯Golang版

1. 问题描述

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

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

注意:给定 n 是一个正整数
LeetCode70. 爬楼梯Golang版

2. 思路

到第n层的方法设为f(n),则f(n) = f(n - 1) + f(n - 2)

3. 代码

func climbStairs(n int) int {
    if n == 1 || n == 2 {
        return n
    }

    pre1 := 1
    pre2 := 2
    for i := 3; i <= n; i++ {
        temp := pre1 + pre2
        pre1 = pre2
        pre2 = temp
    } 
    return pre2
}
上一篇:SYCOJ1018神奇的幻方


下一篇:LeetCode198.md