Search⌘ K
AI Features

Solution: Minimum Moves to Spread Stones Over Grid

Explore how to apply backtracking to find the minimum number of moves needed to place exactly one stone in each cell of a 3x3 grid. This lesson guides you through identifying empty cells, tracking extra stones, and recursively testing all possible moves using Manhattan distance to optimize stone placement.

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