lintcode--爬台阶

来源:互联网 发布:java编写计算器源代码 编辑:程序博客网 时间:2024/04/29 19:14

题目


解答:

递归:

f(0) = 1;

f(1) = 1;

f(2) = f(1) + f(0);

f(m) = f(m-1) + f(m-2), m>=2;

代码:

public class Solution {
    /**
     * @param n: An integer
     * @return: An integer
     */
    public int climbStairs(int n) {
        // write your code here
        if(n == 0)
            return 1;
        if(n == 1)
            return 1;
        
        int a = 1;
        int b = 1;
        int c = 0;
        for(int j = 0;j<n-1;j++){
            c = a + b;
            a = b;
            b = c;
        }
        return c;
    }
}

0 0
原创粉丝点击