## Solution - 小学奥数题,就比 [[LeetCode 0062 - Unique Paths]] 稍微难一点点,当你遇到 Obstable 的时候你把那个点对应的东西设置为 0 —— 因为没有可能能到那个点。 ## Problem You are given an $m \times n$ integer array $\texttt{grid}$. There is a robot initially located at the top-left corner (i.e., $\texttt{grid}[0][0]$). The robot tries to move to the bottom-right corner (i.e., $\texttt{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 $\texttt{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 test cases are generated so that the answer will be less than or equal to $2 \times 10^9$. ### Examples #### 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 $3 \times 3$ grid above. There are two ways to reach the bottom-right corner: 1. Right $\rightarrow$ Right $\rightarrow$ Down $\rightarrow$ Down 2. Down $\rightarrow$ Down $\rightarrow$ Right $\rightarrow$ Right #### Example 2 **Input:** `obstacleGrid = [[0,1],[0,0]]` **Output:** $1$ ### Constraints - $m = \texttt{obstacleGrid.length}$ - $n = \texttt{obstacleGrid}[i].\texttt{length}$ - $1 \leq m, n \leq 100$ - $\texttt{obstacleGrid}[i][j]$ is $0$ or $1$.