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) {
int a=1,b=1,t;
for(int i=2;i<=n;i++){
t=a;
a=a+b;
b=t;
}
return a;
}
};原文:http://blog.csdn.net/starcuan/article/details/18843359