Search⌘ K
AI Features

Solution: Minimum Moves to Spread Stones Over Grid

Explore how to apply backtracking to solve the problem of spreading stones on a 3x3 grid so that each cell has exactly one stone. Understand the process of identifying empty and excess stone cells, using Manhattan distance to calculate moves, and systematically trying all combinations to find the minimum moves. This lesson helps you implement a recursive solution and grasp its time and space complexity considerations.

Statement

Given a 2D grid of integers of size (3×33 \times 3), where each value represents the number of stones in the given cell, return the minimum number of moves required to place exactly one stone in each grid cell.

Constraints:

  • Only one stone can be moved in one move.

  • Stone from a cell can only be moved to another cell if they are adjacent (share a side).

  • The sum of all stones in the grid must be equal to 99.

  • grid.length, grid[i].length ...