Posts

Showing posts from November, 2024

2577. Minimum Time to Visit a Cell In a Grid

Image
You are given a  m x n  matrix  grid  consisting of  non-negative  integers where  grid[row][col]  represents the  minimum  time required to be able to visit the cell  (row, col) , which means you can visit the cell  (row, col)  only when the time you visit it is greater than or equal to  grid[row][col] . You are standing in the  top-left  cell of the matrix in the  0 th  second, and you must move to  any  adjacent cell in the four directions: up, down, left, and right. Each move you make takes 1 second. Return  the  minimum  time required in which you can visit the bottom-right cell of the matrix . If you cannot visit the bottom-right cell, then return  -1 .   Example 1: Input: grid = [[0,1,3,2],[5,1,2,5],[4,3,8,6]] Output: 7 Explanation: One of the paths that we can take is the following: - at t = 0, we are on the cell (0,0). - at t = 1, we move to the cell (...

2290 - Minimum Obstacle Removal to Reach Corner

Image
You are given a  0-indexed  2D integer array  grid  of size  m x n . Each cell has one of two values: 0  represents an  empty  cell, 1  represents an  obstacle  that may be removed. You can move up, down, left, or right from and to an empty cell. Return  the **minimum  number of  obstacles  to  remove  so you can move from the upper left corner  (0, 0)  to the lower right corner ** (m - 1, n - 1) .    Example 1: Input: grid = [[0,1,1],[1,1,0],[1,1,0]] Output: 2 Explanation: We can remove the obstacles at (0, 1) and (0, 2) to create a path from (0, 0) to (2, 2). It can be shown that we need to remove at least 2 obstacles, so we return 2. Note that there may be other ways to remove 2 obstacles to create a path. Example 2: Input: grid = [[0,1,0,0,0],[0,1,0,1,0],[0,0,0,1,0]] Output: 0 Explanation: We can move from (0, 0) to (2, 4) without removing any obstacles, so we return 0.  ...