Class Solution

  • All Implemented Interfaces:

    
    public final class Solution
    
                        

    63 - Unique Paths II\.

    Medium

    You are given an m x n integer array grid. There is a robot initially located at the top-left corner (i.e., grid[0][0]). The robot tries to move to the bottom-right corner (i.e., grid[m-1][n-1]). The robot can only move either down or right at any point in time.

    An obstacle and space are marked as 1 or 0 respectively in grid. A path that the robot takes cannot include any square that is an obstacle.

    Return the number of possible unique paths that the robot can take to reach the bottom-right corner.

    The testcases are generated so that the answer will be less than or equal to <code>2 * 10<sup>9</sup></code>.

    Example 1:

    Input: obstacleGrid = \[\[0,0,0],0,1,0,0,0,0]

    Output: 2

    Explanation: There is one obstacle in the middle of the 3x3 grid above.

    There are two ways to reach the bottom-right corner:

    • Right -> Right -> Down -> Down

    • Down -> Down -> Right -> Right

    Example 2:

    Input: obstacleGrid = \[\[0,1],0,0]

    Output: 1

    Constraints:

    • m == obstacleGrid.length

    • n == obstacleGrid[i].length

    • 1 &lt;= m, n &lt;= 100

    • obstacleGrid[i][j] is 0 or 1.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      Solution()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final Integer uniquePathsWithObstacles(Array<IntArray> obstacleGrid)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait