Solution: Swim in Rising Water
Explore a matrix problem that uses a min heap and Dijkstra-like approach to find the minimum time when swimming is possible from the top-left to the bottom-right cell as water rises. Understand how to efficiently traverse grid cells by elevation and apply this pattern for coding interviews.
We'll cover the following...
Statement
Given an grid[i][j] represents the elevation at position (i, j).
Once it starts to rain, the water level rises over time. At any given time t, the water depth across the grid equals t. A swimmer can move from one cell to an adjacent cell (up, down, left, or right) if both cells have elevations less than or equal to the current water level t.
If the elevation condition is satisfied, a swimmer can swim any distance instantly. However, he cannot move outside the grid boundaries.
Return the minimum time t at which it becomes possible to swim from the top-left cell