Search⌘ K
AI Features

Solution: Unique Paths III

Explore a backtracking approach to solve the Unique Paths III problem. Understand how to count all four-directional paths from start to end while visiting every empty square exactly once. Learn to implement recursive exploration with efficient backtracking and in-place marking to track visited cells, ensuring you uncover all valid routes.

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