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; } }