Tap here to switch tabs
Problem
Ask
Submissions

Problem: Unique Paths III

hard
40 min
Explore how to apply the backtracking technique to solve the Unique Paths III problem, where you navigate a grid visiting every empty cell exactly once from start to end. Learn to identify the problem constraints, plan your approach, and implement an efficient solution for coding interviews.

Statement

You are given a  m×nm \times n  integer array, grid, where each cell, grid[i][j], can have one of the following values:

  • 1 indicates the starting point. There is exactly one such square.

  • 2 marks the ending point. There is exactly one such square.

  • 0 represents empty squares that can be walked over.

  • -1 represents obstacles that cannot be crossed.

Your task is to return the total number of unique four-directional paths from the starting square (1) to the ending square (2), such that every empty square is visited exactly once during the walk.

Constraints:

  • mm ==== grid.length

  • nn ==== grid[i].length

  • 11 \leqm,nm, n 20\leq 20

  • 11 \leq m×nm \times n 20\leq 20

  • 1-1 \leq grid[i][j] 2\leq 2

  • There is exactly one starting cell and one ending cell.

Tap here to switch tabs
Problem
Ask
Submissions

Problem: Unique Paths III

hard
40 min
Explore how to apply the backtracking technique to solve the Unique Paths III problem, where you navigate a grid visiting every empty cell exactly once from start to end. Learn to identify the problem constraints, plan your approach, and implement an efficient solution for coding interviews.

Statement

You are given a  m×nm \times n  integer array, grid, where each cell, grid[i][j], can have one of the following values:

  • 1 indicates the starting point. There is exactly one such square.

  • 2 marks the ending point. There is exactly one such square.

  • 0 represents empty squares that can be walked over.

  • -1 represents obstacles that cannot be crossed.

Your task is to return the total number of unique four-directional paths from the starting square (1) to the ending square (2), such that every empty square is visited exactly once during the walk.

Constraints:

  • mm ==== grid.length

  • nn ==== grid[i].length

  • 11 \leqm,nm, n 20\leq 20

  • 11 \leq m×nm \times n 20\leq 20

  • 1-1 \leq grid[i][j] 2\leq 2

  • There is exactly one starting cell and one ending cell.