Search⌘ K
AI Features

Solution: Unique Paths III

Discover how to solve the Unique Paths III problem using backtracking. Understand how to navigate a grid with obstacles, starting and ending points, and ensure every empty square is visited once. This lesson guides you through recursive exploration, marking visited cells, and efficient backtracking to count all valid paths without extra space.

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