递归 爬楼梯 - lifengyu360/lifengyu_first_git_test GitHub Wiki

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

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

class Solution {

public:

map<int,int> cache;
int climbStairs(int n) {
    if (n <= 3){
        return n;
    }

    if (cache.count(n)){
        return cache[n];
    }
    int result =  (climbStairs(n - 1) + climbStairs(n - 2));
    cache[n] = result;
    return result;
}

};

⚠️ **GitHub.com Fallback** ⚠️