mirror of
				https://gitee.com/coder-xiaomo/leetcode-problemset
				synced 2025-11-04 19:53:12 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			50 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
<p>给你一个 <code>m x n</code> 的矩阵 <code>grid</code> ,每个元素都为 <strong>非负</strong> 整数,其中 <code>grid[row][col]</code> 表示可以访问格子 <code>(row, col)</code> 的 <strong>最早</strong> 时间。也就是说当你访问格子 <code>(row, col)</code> 时,最少已经经过的时间为 <code>grid[row][col]</code> 。</p>
 | 
						||
 | 
						||
<p>你从 <strong>最左上角</strong> 出发,出发时刻为 <code>0</code> ,你必须一直移动到上下左右相邻四个格子中的 <strong>任意</strong> 一个格子(即不能停留在格子上)。每次移动都需要花费 1 单位时间。</p>
 | 
						||
 | 
						||
<p>请你返回 <strong>最早</strong> 到达右下角格子的时间,如果你无法到达右下角的格子,请你返回 <code>-1</code> 。</p>
 | 
						||
 | 
						||
<p> </p>
 | 
						||
 | 
						||
<p><strong>示例 1:</strong></p>
 | 
						||
 | 
						||
<p><img alt="" src="https://assets.leetcode.com/uploads/2023/02/14/yetgriddrawio-8.png" /></p>
 | 
						||
 | 
						||
<pre>
 | 
						||
<b>输入:</b>grid = [[0,1,3,2],[5,1,2,5],[4,3,8,6]]
 | 
						||
<b>输出:</b>7
 | 
						||
<b>解释:</b>一条可行的路径为:
 | 
						||
- 时刻 t = 0 ,我们在格子 (0,0) 。
 | 
						||
- 时刻 t = 1 ,我们移动到格子 (0,1) ,可以移动的原因是 grid[0][1] <= 1 。
 | 
						||
- 时刻 t = 2 ,我们移动到格子 (1,1) ,可以移动的原因是 grid[1][1] <= 2 。
 | 
						||
- 时刻 t = 3 ,我们移动到格子 (1,2) ,可以移动的原因是 grid[1][2] <= 3 。
 | 
						||
- 时刻 t = 4 ,我们移动到格子 (1,1) ,可以移动的原因是 grid[1][1] <= 4 。
 | 
						||
- 时刻 t = 5 ,我们移动到格子 (1,2) ,可以移动的原因是 grid[1][2] <= 5 。
 | 
						||
- 时刻 t = 6 ,我们移动到格子 (1,3) ,可以移动的原因是 grid[1][3] <= 6 。
 | 
						||
- 时刻 t = 7 ,我们移动到格子 (2,3) ,可以移动的原因是 grid[2][3] <= 7 。
 | 
						||
最终到达时刻为 7 。这是最早可以到达的时间。
 | 
						||
</pre>
 | 
						||
 | 
						||
<p><strong>示例 2:</strong></p>
 | 
						||
 | 
						||
<p><img alt="" src="https://assets.leetcode.com/uploads/2023/02/14/yetgriddrawio-9.png" style="width: 151px; height: 151px;" /></p>
 | 
						||
 | 
						||
<pre>
 | 
						||
<b>输入:</b>grid = [[0,2,4],[3,2,1],[1,0,4]]
 | 
						||
<b>输出:</b>-1
 | 
						||
<b>解释:</b>没法从左上角按题目规定走到右下角。
 | 
						||
</pre>
 | 
						||
 | 
						||
<p> </p>
 | 
						||
 | 
						||
<p><strong>提示:</strong></p>
 | 
						||
 | 
						||
<ul>
 | 
						||
	<li><code>m == grid.length</code></li>
 | 
						||
	<li><code>n == grid[i].length</code></li>
 | 
						||
	<li><code>2 <= m, n <= 1000</code></li>
 | 
						||
	<li><code>4 <= m * n <= 10<sup>5</sup></code></li>
 | 
						||
	<li><code>0 <= grid[i][j] <= 10<sup>5</sup></code></li>
 | 
						||
	<li><code>grid[0][0] == 0</code></li>
 | 
						||
</ul>
 |