【华为od】存在一个m*n的二维数组,其成员取值范围为0,1。其中值为1的元素具备扩散性,每经过1S,将上下左右值为0的元素同化为1。

这是一个关于二维数组的问题,数组中1的元素会扩散到相邻的0,目标是求所有元素变为1所需的最短时间。给定矩阵大小及初始扩散点,通过迭代计算得出答案。例如,对于4x4矩阵,两个扩散点在对角线上,将在3秒后完成扩散。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

存在一个m*n的二维数组,其成员取值范围为0,1。其中值为1的元素具备扩散性,每经过1S,将上下左右值为0的元素同化为1。将数组所有成员初始化为0,将矩阵的[i, j]和[m,n]位置上元素修改成1后,在经过多长时间所有元素变为1。

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

输出描述
输出矩阵的所有元素变为1所需要秒数。

用例

输入 4,4,0,0,3,3
输出 3
说明
输入数据中的前2个数字表示这是一个4*4的矩阵;

中间两个数字表示一个初始扩散点位置为0,0;

最后2个数字表示另一个扩散点位置为3,3。

给出的样例是一个简单模型,初始点在对角线上,达到中间的位置分别为3次迭代,即3秒。所以输出为3。

# 输入
m, n, i, j, x, y 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值