#P1502. 2024.06.19-暑期实习-第三题-塔子哥的农田修复
-
ID: 100
Type: Default
2000ms
256MiB
Tried: 480
Accepted: 108
Difficulty: 7
Uploaded By:
TaZi
Tags>BFS
2024.06.19-暑期实习-第三题-塔子哥的农田修复
问题描述
塔子哥的农田受到地震的破坏,农田中的一些网点断开了联系。假设原本的农田网构成一个矩形,其中未被破坏的网点标记为 1,被破坏的网点标记为 0。标记为 1 的网点连在一起构成一个子网。现在,塔子哥需要找到一个目标网点,并找出离它最近的其他子网。请注意,两个网点相连只能通过上下左右四个方向,不可以通过斜对角相连。两个网点的距离定义为从一个网点(假设网点名为 C)到达另一个网点(假设网点名为 D)需要经过相连网点的最小数目(C 和 D 这两个网点不计算在内)。两个子网(假设分别为 A 网和 B 网)不相连,A 网中所有的网点与 B 网中所有的网点的距离中最小的那个即为 A 网和 B 网的最小距离。
输入格式
第一行包含两个正整数 x,y,表示目标网点的坐标位置(x 表示行号,y 表示列号)。
第二行包含两个正整数 n,m,表示农田矩形的行数 n 和列数 m。
接下来的 n 行每行包含 m 个以空格分隔的整数 0 或 1,表示农田网点的破坏情况。
输出格式
输出一个整数,表示最近的未被破坏子网的距离。如果整网中只有一个子网,则返回 −1。
样例输入
1 1
6 6
1 1 0 0 1 0
1 1 0 0 1 1
0 0 0 0 1 0
0 1 0 1 0 0
1 1 0 0 0 0
1 1 1 0 1 1
样例输出
1
评测数据与规模
- 1≤n,m≤1000。
- 输入保证目标网点是未被破坏的网点,且目标网点所在子网是一个子网。
通知
扫码备注华为交流群~期待您的到来
- 湘ICP备2023007293号
- Worker 0, 18ms
- Powered by Hydro v4.14.1 Community