<p>You are climbing a staircase. It takes <code>n</code> steps to reach the top.</p> <p>Each time you can either climb <code>1</code> or <code>2</code> steps. In how many distinct ways can you climb to the top?</p> <p> </p> <p><strong>Example 1:</strong></p> <pre> <strong>Input:</strong> n = 2 <strong>Output:</strong> 2 <strong>Explanation:</strong> There are two ways to climb to the top. 1. 1 step + 1 step 2. 2 steps </pre> <p><strong>Example 2:</strong></p> <pre> <strong>Input:</strong> n = 3 <strong>Output:</strong> 3 <strong>Explanation:</strong> There are three ways to climb to the top. 1. 1 step + 1 step + 1 step 2. 1 step + 2 steps 3. 2 steps + 1 step </pre> <p> </p> <p><strong>Constraints:</strong></p> <ul> <li><code>1 <= n <= 45</code></li> </ul>