#OD279. 数值同化

数值同化

题目解析和算法源码

华为OD机试 - 数值同化(Java & JS & Python & C & C++)_伏城之外的博客-CSDN博客

题目描述

存在一个m*n的二维数组,其成员取值范围为0,1,2。

其中值为1的元素具备同化特性,每经过1S,将上下左右值为0的元素同化为1。

而值为2的元素,免疫同化。

将数组所有成员随机初始化为0或2,再将矩阵的[0, 0]元素修改成1,在经过足够长的时间后求矩阵中有多少个元素是0或2(即0和2数量之和)。

输入描述

输入的前两个数字是矩阵大小。后面是数字矩阵内容。

输出描述

返回矩阵中非1的元素个数。

用例1

输入

4 4
0 0 0 0
0 2 2 2
0 2 0 0
0 2 0 0

输出

9

说明

输入数字前两个数字是矩阵大小。后面的数字是矩阵内容。 起始位置(0,0)被修改为1后,最终只能同化矩阵为:

1 1 1 1

1 2 2 2

1 2 0 0

1 2 0 0

所以矩阵中非1的元素个数为9