forked from DaleStudy/leetcode-study
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathYoungSeok-Choi.java
More file actions
31 lines (27 loc) Β· 970 Bytes
/
YoungSeok-Choi.java
File metadata and controls
31 lines (27 loc) Β· 970 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
// NOTE: 2 * X λΆν° λͺ¨λ κ²½μ°λ₯Ό μΈμ΄λ³΄λ, 3 * 3μ 격μκ° λμμ λ 2 * 3, 3 * 2 κ²½μ°λ₯Ό λν κ°μ΄ λμ€λ κ²μ μ μ μμμ
// +) 3 * 4 격μμ λν λ΅μ 3 * 3 격μμ λ΅ + 2 * 4 격μμ λ΅μ λνλ©΄ λ§λ€μ΄μ§λ κ²μ μμ μμκ³ , μλμ κ°μ μ νμμ λ§λ€ μ μμμ
// memo[m][n] = memo[m][n - 1] + memo[m - 1][n]
class Solution {
public int uniquePaths(int m, int n) {
int[][] memo = new int[101][101];
if (m == 1 || n == 1) {
return 1;
}
memo[2][2] = 2;
for (int i = 2; i < 3; i++) {
for (int j = 3; j < 101; j++) {
memo[i][j] = j;
memo[j][i] = j;
}
}
for (int i = 3; i < 101; i++) {
memo[i][i] = memo[i][i - 1] + memo[i - 1][i];
for (int j = i + 1; j < 101; j++) {
int val = memo[i][j - 1] + memo[i - 1][j];
memo[i][j] = val;
memo[j][i] = val;
}
}
return memo[m][n];
}
}