LeetCode 70 Climbing Stairs - Solution

The core idea

To reach step n, you came from step n-1 (took 1 step) or step n-2 (took 2 steps).

So: ways(n) = ways(n-1) + ways(n-2). This is the Fibonacci recurrence.

Base cases: ways(1) = 1, ways(2) = 2.

Build up from base cases using a simple loop. You only need the previous two values, so constant space suffices.