Search⌘ K
AI Features

Solution: Shortest Distance from All Buildings

Explore how to calculate the shortest sum of distances from an empty land cell to all buildings in a grid using breadth-first search. Understand BFS traversal from multiple buildings, managing distance accumulation, and ensuring accessibility. This lesson helps you implement and optimize a BFS-based solution to minimize travel distance with clear time and space complexity considerations.

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

  • ...