Search⌘ K
AI Features

Solution: Unique Paths III

Explore how to solve Unique Paths III by using backtracking to navigate an m-by-n grid. This lesson teaches you to count every path that covers all walkable squares exactly once, avoiding obstacles by recursively exploring and backtracking through possible moves. You'll learn how to implement this algorithm efficiently and understand its time and space complexity.

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