leetcode-70. Climbing Stairs

来源:互联网 发布:办公用品库存软件 编辑:程序博客网 时间:2024/05/16 05:14

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)        {            return 1;        }        if(n == 2)        {            return 2;        }        int stepPre = 1;        int stepLater = 2;        int result = 0;        for(int i = 3;i<=n;i++)        {            result = stepPre + stepLater;            stepPre = stepLater;            stepLater = result;        }        return result;    }};
0 0
原创粉丝点击