【华为机试真题 JAVA】数值同化-100

【编程题目 |200分】数值同化

时间限制:Java 2秒

空间限制:Java 524288K

64bit IO Format:%lld

本题可使用本地IDE编码,不能使用本地已有代码,无跳出限制。

编码后请点击”保存并调试“按钮进行代码提交。


题目描述

有一个 m 行 n 列的二维数组,每个元素的值为 0、1 或 2:

  • 值为 1 的元素具有“同化”能力;
  • 每 1 秒钟可以将其上下左右为 0 的邻居变为 1;
  • 值为 2 的元素免疫同化,不会被变成 1。

数组初始状态由用户输入(只包含 0 和 2),再将坐标为 [0,0] 的元素设置为 1。经过足够长的时间后(直到不再有 0 被同化),请输出最终矩阵中值为 0 或 2 的元素个数。


输入描述

第一行两个整数 mn,表示矩阵的行数与列数,0 < m, n <= 30

接下来 m 行,每行 n

你可能感兴趣的:(华为,java,开发语言,华为od,算法)