Swim In Rising Water

Problem

Given an n x n grid where each cell holds an elevation, at time t you may swim between adjacent cells only if both cells' elevations are at most t. Starting at the top-left and ending at the bottom-right, return the minimum time at which a path exists.

Examples

Example 1
Input:grid = [[0,2],[1,3]]
Output:3

Constraints

  • n == grid.length == grid[i].length
  • 1 <= n <= 50

Solve it in the editor. Sign in free to run your Python or JavaScript against test cases, get a verdict, and track your attempts.

Solve on FeatCode →

How to approach it: the Advanced Graphs pattern

Beyond basic traversal, some graph problems need ordering constraints (topological sort) or weighted shortest paths (Dijkstra, Bellman-Ford, minimum spanning trees).

Look for this pattern when

  • The problem has ordering or prerequisite constraints ("do X before Y").
  • Edges have weights or costs and you need the cheapest path, not just any path.

Read the full Advanced Graphs guide →

Video walkthroughs

Original problem on LeetCode ↗

More Advanced Graphs problems