316. Unique Paths III
HardBacktracking
You are given an `m x n` integer array `grid` where `grid[i][j]` could be: - `1` representing the **starting** square. There is exactly one starting square. - `2` representing the **ending** square. There is exactly one ending square. - `0` representing empty squares we can walk over. - `-1` representing obstacles that we cannot walk over. Return the number of **4-directional** walks from the starting square to the ending square, that walk over **every non-obstacle square exactly once**.
Examples
Input: [[1,0,0,0],[0,0,0,0],[0,0,2,-1]]
Output: 2
Explanation: Two distinct walks cover all 11 walkable squares exactly once and finish on the end square.
Constraints
- m == grid.length
- n == grid[i].length
- 1 <= m, n <= 20
- 1 <= m * n <= 20
- -1 <= grid[i][j] <= 2
- There is exactly one starting cell and one ending cell.
Loading...
Run checks all cases above. Submit evaluates all test cases.