Search⌘ K
AI Features

Solution: Unique Paths III

Explore how to implement a backtracking algorithm to find all unique paths from start to end in a grid. This lesson guides you through marking visited cells, exploring four directions, and backtracking when necessary to cover every empty square exactly once while avoiding obstacles.

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