Leetcode 63. Unique Paths II
2017-04-25 17:23
369 查看
// 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 Main { public static void main(String[] args) throws Exception { int[][] input = {{0} ,{0}}; System.out.println(uniquePathsWithObstacles(input)); } public static int uniquePathsWithObstacles(int[][] obstacleGrid) { int[][] result = new int[obstacleGrid.length][obstacleGrid[0].length]; boolean flag1 = false; boolean flag2 = false; for(int i = 0;i<obstacleGrid.length;i++){ //初始化结果矩阵的第一行,如果之前有障碍以后就都是0了 if(obstacleGrid[i][0]!=1 && !flag1){ result[i][0] = 1; }else{ flag1 = true; result[i][0] = 0; } } for(int i = 0;i<obstacleGrid[0].length;i++){ //初始化结果矩阵的第一列,如果之前有障碍以后就都是0了 if(obstacleGrid[0][i]!=1 && !flag2){ result[0][i] = 1; }else{ flag2 = true; result[0][i] = 0; } } for(int i = 1;i<obstacleGrid.length;i++){ for(int j = 1;j<obstacleGrid[0].length;j++){ if(obstacleGrid[i][j] == 1){ //如果有障碍则结果矩阵相应位置是0 result[i][j] = 0; continue; } result[i][j] = result[i-1][j]+result[i][j-1]; } } return result[obstacleGrid.length-1][obstacleGrid[0].length-1]; } }
相关文章推荐
- leetcode - 62,63. Unique Paths(II) & 64.Minimum Path Sum
- [Leetcode] Unique Paths II (Java)
- Leetcode:63. Unique Paths II
- [leetcode] Unique Paths II
- Unique Paths II ——LeetCode
- LeetCode-Unique Paths II
- LeetCode_OJ【63】Unique Paths II
- Unique Paths II -- leetcode
- [Leetcode] #62#63 Unique Paths I & II
- [LeetCode]-Unique PathsII 有障碍的矩阵中求两点间所有路线条数
- [LeetCode]Unique Paths II
- leetcode Unique Paths II
- leetcode Unique Paths II
- LeetCode: Unique Paths I & II & Minimum Path Sum
- LeetCode_DP_Unique Paths II
- [LeetCode] Unique Paths II
- leetcode Unique Paths II
- LeetCode Unique Paths II
- LeetCode-Unique Paths II
- [Leetcode] Unique Paths II