type
status
date
slug
summary
tags
category
icon
password
创建时间
Mar 13, 2025 08:53 AM
你现在手里有一份大小为
n x n 的 网格 grid,上面的每个 单元格 都用 0 和 1 标记好了。其中 0 代表海洋,1 代表陆地。请你找出一个海洋单元格,这个海洋单元格到离它最近的陆地单元格的距离是最大的,并返回该距离。如果网格上只有陆地或者海洋,请返回
-1。我们这里说的距离是「曼哈顿距离」( Manhattan Distance):
(x0, y0) 和 (x1, y1) 这两个单元格之间的距离是 |x0 - x1| + |y0 - y1| 。暴力
BFS
将所有的陆地放入队列,填海造陆,将海洋变为路店,最后填的海是最远的。
为什么可以?因为曼哈顿距离计算的就是从一个格子到另一个格子的距离,左(右)移动多少个格子,上(下)移动多少个格子。
📎 参考
- 无