Climbing Stairs

问题:上楼每次能走一步或两步,有多少种走法

class Solution {

public:

    int a[1000];

    int dfs(int n)

    {

        if(n<0) return 0;

        if(n==0) return 1;

        if(a[n]) return a[n];

        return a[n]=dfs(n-1)+dfs(n-2)

    }

    int climbStairs(int n) {

        return dfs(n);

    }

};

  

你可能感兴趣的:(bing)