leetcode-63. Unique Paths II
题目
Follow up for “Unique Paths”:
Now consider if some obstacles are added to the grids. How many unique paths would there be?
An obstacle and empty space is marked as 1 and 0 respectively in the grid.
For example,
There is one obstacle in the middle of a 3x3 grid as illustrated below.[
[0,0,0],
[0,1,0],
[0,0,0]
]
The total number of unique paths is 2.
同上一题没有什么需要说明的:
public class Solution {
public int uniquePathsWithObstacles(int[][] obstacleGrid) {
int[][] mat = new int[obstacleGrid.length][obstacleGrid[0].length];
for(int j=0;j<obstacleGrid[0].length;j++){
if(obstacleGrid[0][j]==0) mat[0][j] = 1;
else break;
}
for(int j=0;j<obstacleGrid.length;j++){
if(obstacleGrid[j][0]==0) mat[j][0] = 1;
else break;
}
for(int i = 1; i < obstacleGrid.length; i++)
for(int j = 1; j < obstacleGrid[0].length; j++){
if(obstacleGrid[i][j]==0)
mat[i][j] =mat[i-1][j]+mat[i][j-1];
else{
mat[i][j]=0;
}
}
return mat[obstacleGrid.length-1][obstacleGrid[0].length-1];
}
}