Files
cpp-flashcards/org/study_deck_02/dsa/1-d-dynamic-programming/0070-climbing-stairs.org
T

58 lines
959 B
Org Mode
Raw Normal View History

#+PROPERTY: STUDY_DECK_02
* TODO 0070. Climbing Stairs :easy:
:PROPERTIES:
:NEETCODE: [[file:../../roadmap.org::*0070. Climbing Stairs][0070. Climbing Stairs]]
:END:
You are climbing a staircase. It takes ~n~ steps to reach the top.
Each time you can either climb ~1~ or ~2~ steps. In how many distinct ways can you climb to the top?
*Example 1:*
#+begin_src
Input: n = 2
Output: 2
Explanation: There are two ways to climb to the top.
1. 1 step + 1 step
2. 2 steps
#+end_src
*Example 2:*
#+begin_src
Input: n = 3
Output: 3
Explanation: 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
#+end_src
*Constraints:*
- ~1 <= n <= 45~
** TODO Approach
Write your approach here.
** TODO Python
#+begin_src python
class Solution:
def climbStairs(self, n: int) -> int:
#+end_src
** TODO C++
#+begin_src cpp
class Solution {
public:
int climbStairs(int n) {
}
};
#+end_src