In an m × n grid, each cell can be empty (0), fresh orange (1), or rotten orange (2).
Every minute, fresh oranges adjacent to rotten oranges become rotten.
Return the minimum minutes until no fresh orange remains. Return -1 if impossible.
With grid:
2 1 1
1 1 0
0 1 1
Answer: 4 minutes for rot to spread to all fresh oranges.
Constraints: .