## 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$.