lytuongyenoanh
New member
#Python #climbing_stairs #Recursion
Đưa ra một cầu thang với n bước, bạn có thể leo lên 1 hoặc 2 bước mỗi lần.Trong bao nhiêu cách bạn có thể leo lên cầu thang?
**Ví dụ 1:**
`` `
Đầu vào: n = 2
Đầu ra: 2
Giải thích: Có hai cách để leo lên cầu thang: 1 bước + 1 bước hoặc 2 bước.
`` `
** Ví dụ 2: **
`` `
Đầu vào: n = 3
Đầu ra: 3
Giải thích: Có ba cách để leo lên cầu thang: 1 bước + 1 bước + 1 bước, 1 bước + 2 bước hoặc 2 bước + 1 bước.
`` `
**Giải pháp:**
`` `Python
DEF CLIMBSTAIRS (N):
Nếu n <= 1:
trả lại n
dp = [0] * (n + 1)
DP [0] = 1
DP [1] = 1
Đối với i trong phạm vi (2, n + 1):
dp = dp [i - 1] + dp [i - 2]
trả lại dp [n]
`` `
## hashtags
* #Lập trình năng động
* #leetcode
* #Recursion
* #leo cầu thang
* #Python
=======================================
#Python #climbing_stairs #Recursion #dynamic_programming #leetcode ## 70. Climbing Stairs
Given a staircase with n steps, you can climb up either 1 or 2 steps at a time. In how many ways can you climb the staircase?
**Example 1:**
```
Input: n = 2
Output: 2
Explanation: There are two ways to climb the staircase: 1 step + 1 step or 2 steps.
```
**Example 2:**
```
Input: n = 3
Output: 3
Explanation: There are three ways to climb the staircase: 1 step + 1 step + 1 step, 1 step + 2 steps, or 2 steps + 1 step.
```
**Solution:**
```python
def climbStairs:
if n <= 1:
return n
dp = [0] * (n + 1)
dp[0] = 1
dp[1] = 1
for i in range(2, n + 1):
dp = dp[i - 1] + dp[i - 2]
return dp[n]
```
## Hashtags
* #dynamic_programming
* #leetcode
* #Recursion
* #climbing_stairs
* #Python
Đưa ra một cầu thang với n bước, bạn có thể leo lên 1 hoặc 2 bước mỗi lần.Trong bao nhiêu cách bạn có thể leo lên cầu thang?
**Ví dụ 1:**
`` `
Đầu vào: n = 2
Đầu ra: 2
Giải thích: Có hai cách để leo lên cầu thang: 1 bước + 1 bước hoặc 2 bước.
`` `
** Ví dụ 2: **
`` `
Đầu vào: n = 3
Đầu ra: 3
Giải thích: Có ba cách để leo lên cầu thang: 1 bước + 1 bước + 1 bước, 1 bước + 2 bước hoặc 2 bước + 1 bước.
`` `
**Giải pháp:**
`` `Python
DEF CLIMBSTAIRS (N):
Nếu n <= 1:
trả lại n
dp = [0] * (n + 1)
DP [0] = 1
DP [1] = 1
Đối với i trong phạm vi (2, n + 1):
dp = dp [i - 1] + dp [i - 2]
trả lại dp [n]
`` `
## hashtags
* #Lập trình năng động
* #leetcode
* #Recursion
* #leo cầu thang
* #Python
=======================================
#Python #climbing_stairs #Recursion #dynamic_programming #leetcode ## 70. Climbing Stairs
Given a staircase with n steps, you can climb up either 1 or 2 steps at a time. In how many ways can you climb the staircase?
**Example 1:**
```
Input: n = 2
Output: 2
Explanation: There are two ways to climb the staircase: 1 step + 1 step or 2 steps.
```
**Example 2:**
```
Input: n = 3
Output: 3
Explanation: There are three ways to climb the staircase: 1 step + 1 step + 1 step, 1 step + 2 steps, or 2 steps + 1 step.
```
**Solution:**
```python
def climbStairs:
if n <= 1:
return n
dp = [0] * (n + 1)
dp[0] = 1
dp[1] = 1
for i in range(2, n + 1):
dp = dp[i - 1] + dp[i - 2]
return dp[n]
```
## Hashtags
* #dynamic_programming
* #leetcode
* #Recursion
* #climbing_stairs
* #Python