爬楼梯

来源:互联网 发布:美国国际科技大学知乎 编辑:程序博客网 时间:2024/04/28 15:53

You are climbing a stair case. It takes n steps to reach to the top.

Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?

class Solution {public:    int climbStairs(int n) {        if (n < 1)    {    return 0;    }    if (n == 1 || n == 2)    {    return n;    }    int temp = 1;    int result = 2;    for (int i = 3; i <= n; i++)    {    int temp1 = result;//保存i-2的结果    result += temp;//i的结果为i-1的加上i-2的    temp = temp1;    }    return result;    }};



0 0