var updateMatrix = function(mat) {
const m = mat.length, n = mat[0].length
const res = Array.from({length: m}, () => new Array(n).fill(0))
// 左上
for (let i = 0
for (let j = 0
if (mat[i][j]) {
res[i][j] = Math.min(
(res[i - 1] ? res[i - 1][j] : Infinity),
(res[i][j - 1] === undefined ? Infinity : res[i][j - 1])
) + 1
}
}
}
// 右下
for (let i = m - 1
for (let j = n - 1
if (mat[i][j]) {
res[i][j] = Math.min(Math.min(
(res[i + 1] ? res[i + 1][j] : Infinity),
(res[i][j + 1] ===undefined ? Infinity : res[i][j + 1])
) + 1, res[i][j])
}
}
}
return res
}
var maxValue = function(grid) {
const m=grid.length,n=grid[0].length
const dp=new Array(m).fill(0).map(()=>new Array(n).fill(0))
dp[0][0]=grid[0][0]
for(let i=1;i<m;i++){
dp[i][0]=dp[i-1][0]+grid[i][0]
}
for(let j=1;j<n;j++){
dp[0][j]=dp[0][j-1]+grid[0][j]
}
for(let i=1;i<m;i++){
for(let j=1;j<n;j++){
dp[i][j]=Math.max(dp[i-1][j],dp[i][[j-1]])+grid[i][j]
}
}
return dp[m-1][n-1]
};