美文网首页
63. Unique Paths II

63. Unique Paths II

作者: namelessEcho | 来源:发表于2017-10-06 14:37 被阅读0次

由于障碍的出现,需要改动一下代码。需要注意的是在初始化第一行时如果前面出现障碍,后面必须都是0

class Solution {
    public int uniquePathsWithObstacles(int[][] obstacleGrid) {
        int row = obstacleGrid.length;
        int col = obstacleGrid[0].length;
        int[] dp = new int[col];
        for(int i = 0 ;i<col;i++)
        {
           if(obstacleGrid[0][i]==1)
           {
               for(int j = i ;j<col;j++)
               {
                   dp[j]=0;
               }
               break;
           }
            else
                dp[i]=1;
        }
        for(int i = 1 ;i<row;i++)
        {
            for(int j = 0 ;j<col;j++)
         {
           if(obstacleGrid[i][j]==0)
             dp[j]=j==0?dp[0]:dp[j]+dp[j-1];
           else
             dp[j]=0;
         }
        
       }
        return dp[col-1];
    }
    
}

相关文章

网友评论

      本文标题:63. Unique Paths II

      本文链接:https://www.haomeiwen.com/subject/kwzlyxtx.html