Class Solution
-
- All Implemented Interfaces:
public final class Solution3286 - Find a Safe Walk Through a Grid\.
Medium
You are given an
m x nbinary matrixgridand an integerhealth.You start on the upper-left corner
(0, 0)and would like to get to the lower-right corner(m - 1, n - 1).You can move up, down, left, or right from one cell to another adjacent cell as long as your health remains positive.
Cells
(i, j)withgrid[i][j] = 1are considered unsafe and reduce your health by 1.Return
trueif you can reach the final cell with a health value of 1 or more, andfalseotherwise.Example 1:
Input: grid = \[\[0,1,0,0,0],0,1,0,1,0,0,0,0,1,0], health = 1
Output: true
Explanation:
The final cell can be reached safely by walking along the gray cells below.
Example 2:
Input: grid = \[\[0,1,1,0,0,0],1,0,1,0,0,0,0,1,1,1,0,1,0,0,1,0,1,0], health = 3
Output: false
Explanation:
A minimum of 4 health points is needed to reach the final cell safely.
Example 3:
Input: grid = \[\[1,1,1],1,0,1,1,1,1], health = 5
Output: true
Explanation:
The final cell can be reached safely by walking along the gray cells below.
Any path that does not go through the cell
(1, 1)is unsafe since your health will drop to 0 when reaching the final cell.Constraints:
m == grid.lengthn == grid[i].length1 <= m, n <= 502 <= m * n1 <= health <= m + ngrid[i][j]is either 0 or 1.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-