Maximum Number of Moves in a Grid

You are given a 0-indexed m x n matrix grid consisting of positive integers.

You can start at any cell in the first column of the matrix, and traverse the grid in the following way:

  • From a cell (row, col), you can move to any of the cells (row - 1, col + 1), (row, col + 1), and (row + 1, col + 1) such that the value of the cell you move to should be strictly bigger than the value of the current cell.

Return the maximum number of moves that you can perform.

Example 1
 2  4  3  5
 5  4  9  3
 3  4  2 11
10  9 13 15
Inputgrid = [[2,4,3,5],[5,4,9,3],[3,4,2,11],[10,9,13,15]]
Output3
Starting at (0, 0), one optimal path is (0, 0) -> (0, 1) -> (1, 2) -> (2, 3), for a maximum of 3 moves.
Example 2
3 2 4
2 1 9
1 1 7
Inputgrid = [[3,2,4],[2,1,9],[1,1,7]]
Output0
Starting from any cell in the first column, no valid move can be performed.

Constraints

  • m == grid.length
  • n == grid[i].length
  • 2 <= m, n <= 1000
  • 4 <= m * n <= 10^5
  • 1 <= grid[i][j] <= 10^6

Asked at 2 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate