[JS] Unique Paths
2022. 9. 5. 19:51
🔒 문제 (LeetCode 62)
There is a robot on an m x n grid. The robot is initially located at the top-left corner (i.e., grid[0][0]). The robot tries to move to the bottom-right corner (i.e., grid[m - 1][n - 1]). The robot can only move either down or right at any point in time.
Given the two integers m and n, return the number of possible unique paths that the robot can take to reach the bottom-right corner.
The test cases are generated so that the answer will be less than or equal to 2 * 109.
Constraints:
- 1 <= m, n <= 100
🌊 입출력
Example 1:
Input: m = 3, n = 7
Output: 28
Example 2:
Input: m = 3, n = 2
Output: 3
Explanation: From the top-left corner, there are a total of 3 ways to reach the bottom-right corner:
1. Right -> Down -> Down
2. Down -> Down -> Right
3. Down -> Right -> Down
🔑 해결
🌌 알고리즘 - DP
/**
* @param {number} m
* @param {number} n
* @return {number}
*/
var uniquePaths = function(m, n) {
let dp = new Array(m).fill().map(() => new Array(n).fill(1))
for(let i = 1; i < m; i++) {
for(let j = 1; j < n; j++) {
dp[i][j] = dp[i-1][j] + dp[i][j-1]
}
}
return dp[m-1][n-1]
};
'코딩테스트 (JS) > DP' 카테고리의 다른 글
[JS] Arithmetic Slices (0) | 2022.09.06 |
---|---|
[JS] Longest Palindromic Substring (0) | 2022.09.06 |
[JS] Jump Game II (0) | 2022.09.05 |
[JS] House Robber II (0) | 2022.09.04 |
[DP] Triangle (0) | 2022.08.01 |