请教一个leetcode上的题# JobHunting - 待字闺中
e*i
1 楼
我在看1337写的那个unique path的解法,最后一种DP,有点疑问:
const int M_MAX = 100;
const int N_MAX = 100;
int dp(int m, int n) {
int mat[M_MAX+2][N_MAX+2] = {0};
mat[m][n+1] = 1;
for (int r = m; r >= 1; r--)
for (int c = n; c >= 1; c--)
mat[r][c] = mat[r+1][c] + mat[r][c+1];
return mat[1][1];
}
我想问的是,为什么只初始化mat[m][n+1]而没有mat[m+1][n]呢?
const int M_MAX = 100;
const int N_MAX = 100;
int dp(int m, int n) {
int mat[M_MAX+2][N_MAX+2] = {0};
mat[m][n+1] = 1;
for (int r = m; r >= 1; r--)
for (int c = n; c >= 1; c--)
mat[r][c] = mat[r+1][c] + mat[r][c+1];
return mat[1][1];
}
我想问的是,为什么只初始化mat[m][n+1]而没有mat[m+1][n]呢?