华为OD机试D卷 --污染水域--24年OD统一考试(Java & JS & Python & C & C++)
飞码创造者 2024-07-08 16:05:03 阅读 65
文章目录
题目描述
输入描述
输出描述
用例
题目解析
算法源码
题目描述
输入一行字符串,字符串可转换为N*N的数组,数组可认为是一个水域,判断多少天后,水域被全部污染。
数组中只有0和1,0表示纯净,1表示污染,每天只可污染上下左右的水域,如果开始全部被污染,或永远无法污染,则返回-1。
输入描述
无
输出描述
无
用例
输入
1,0,1,0,0,0,1,0,1
输出
2
说明
输入转化为数组为:
1 0 1
0 0 0
1 0 1
第一天后水域变为
1 1 1
1 0 1
1 1 1
第二天全部被污染
输入
0,0,0,0
输出
-1
说明
无
题目解析
题目描述了一个模拟水域污染扩散的问题。我们有一个N*N的二维数组,其中0表示纯净的水域,1表示已经被污染的水域。每天,污染会向上下左右四个方向扩散,直到所有水域都被污染或者无法再扩散为止。
我们需要编写一个算法来模拟这个过程,并返回污染扩散到所有水域所需的天数。如果初始状态所有水域都是污染的(即全为1),或者存在无法被污染的水域(即被0包围的1),则返
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。