Climbing Stairs

Climbing Stairs 

问题:

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?

思路:

  简单动态规划 count[i] = count[i-1] + count[i-2];

我的代码:

public class Solution {
    public int climbStairs(int n) {
       if(n < 1)    return 0;
       int pre = 1;
       int cur = 1;

       for(int i = 2; i<= n; i++)
       {
           int change = cur;
           cur = cur + pre;
           pre = change;
       }
       return cur;
    }
}
View Code

 

posted on 2015-03-06 16:18  zhouzhou0615  阅读(131)  评论(0编辑  收藏  举报

导航