forked from DaleStudy/leetcode-study
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathuraflower.js
More file actions
36 lines (30 loc) ยท 871 Bytes
/
uraflower.js
File metadata and controls
36 lines (30 loc) ยท 871 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/**
* (0,0)์์ (m,n)์ ๋๋ฌํ ์ ์๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๋ฐํํ๋ ํจ์
* @param {number} m
* @param {number} n
* @return {number}
*/
const uniquePaths = function (m, n) {
const grid = Array.from({length: m}, () => Array(n).fill(0));
let r = 0;
let c = 0;
const queue = [[r, c]];
grid[r][c] = 1;
while (queue.length) {
const [x, y] = queue.shift();
if (x === m - 1 && y === n - 1) {
continue;
}
if (0 <= x + 1 && x + 1 < m) {
if (grid[x+1][y] === 0) queue.push([x + 1, y]);
grid[x+1][y] += grid[x][y];
}
if (0 <= y + 1 && y + 1 < n) {
if (grid[x][y+1] === 0) queue.push([x, y + 1]);
grid[x][y+1] += grid[x][y];
}
}
return grid[m-1][n-1];
};
// ์๊ฐ๋ณต์ก๋: O(m * n)
// ๊ณต๊ฐ๋ณต์ก๋: O(m * n)