小羊吃草

小羊吃草

题目描述

青青草原上有一群小羊🐏,他分布在各个位置,草原上也很多块区域有草,也有的地方只有水或土地,只有吃完草原上所有的草它们才会满意的离开。但是它们有个不好的习惯,就是只会吃一块草地相连区域的草,可能有的地方的草它们吃不到。

现在用一个二维矩阵描述青青草原:

  • 0 代表水或土地区域(没草的地方)
  • 1 代表草地
  • 2 代表小羊们初始的位置(开始时的位置的草已经吃完了,开始向周围吃草,即向上下左右吃草)

每分钟小羊们(假设每一块草地的小羊都无限多)都会从已经吃完草的位置向四周扩散(四周有草才能扩散),问吃完所有草要多少分钟(周围已经无草可吃了,可能还有有草但吃不到的地方),如果还有草吃不到则额外输出一行 吃完草的数量。

输入格式

输入包含多行,第一行包含 2 个整数 MN ,表示有 N * M 的矩阵,接下来的 N 行,每行包含 M 个整数表示青青草原。

输出格式

输出一行答案表示吃完所有草要多少分钟,如果还有草不能吃完则额外输出一行为吃完草的数量。

数据范围

1 ≤ N, M ≤ 5000

样例

样例输入

3 3
2 1 1
1 1 0
0 1 1

样例输出

4

解释

从 (0,0) 位置开始吃草,第一次扩散 (0,1), (1,0) 被吃完,第二次扩散 (0,2),(1,1) 被吃完,第三次扩散 (2,1) 被吃完,第四次扩散 (2,2) 被吃完,小羊们全部可以吃的草已经全部吃完了,总共耗时4分钟,无剩余吃不到的草

样例输入

3 3
2 1 1
0 1 1
1 0 1

样例输出

4
1

解释

同理,从 (0,0) 开始吃草总共耗时4分钟,但是位于 (2,0) 位置的草无法吃到,剩余1块区域吃不到的草

温馨提示: 小羊们随机分布在各个区域,不一定集中在一起

时限部分 1s,部分 2s,部分 3s
出题人dreamy-xay

信息

ID
1008
难度
9
分类
(无)
标签
递交数
50
已通过
3
通过率
6%
上传者

相关

在下列比赛中:

第一次假期赛