Search⌘ K
AI Features

Solution: Shortest Distance from All Buildings

Explore how to apply tree breadth-first search to determine the optimal placement of a house on empty land to minimize distance to all buildings within a grid. Understand the BFS strategy from buildings outward, the use of auxiliary grids for distance summation and reachability, and how to find the minimum travel distance effectively.

Statement

Given an m x n integer grid grid, where each cell contains one of three values:

  • 00 represents empty land that can be freely traversed,

  • 11 represents a building that cannot be passed through,

  • 22 represents an obstacle that cannot be passed through.

You want to place a house on an empty land cell (00) such that the sum of shortest distances from the house to all buildings is minimized. Movement is restricted to four directions: up, down, left, and right.

Return the minimum total travel distance for such a placement. If no valid empty land cell can reach all buildings, return 1-1.

Note: The total travel distance is the sum of the shortest path distances from the chosen empty land cell to every building in the grid.

Constraints:

  • m == grid.length

  • n == grid[i].length

  • ...