Climbing Stairs

Description:

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?

Code:

    int climbStairs(int n) {
        if (1==n)
            return 1;
        else if (2==n)
            return 2;
        else
        {
            int p = 1, q = 2, result = 0;
            for (int i = 3; i <= n; i++)
            {
                result = p + q;
                 p = q;
                q = result;
            }
            return result;
        }
    }

 

posted @ 2015-06-17 19:03  Rosanne  阅读(140)  评论(0编辑  收藏  举报