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?
public class Solution {
public int climbStairs(int n) {
int one = 1;
int two = 2;
if(n == 1) return 1;
else if(n == 2) return 2;
for(int i=3; i<=n; i++){
int t = one + two;
one = two;
two = t;
}
return two;
}
}