P1162 填涂颜色(dfs)

该博客介绍了洛谷P1162问题的解决方案,涉及数字矩阵和DFS深度优先搜索算法。问题要求在由0组成的方阵中,将由1构成的闭合圈内的所有空间填充为2。解决方案是通过扩展矩阵并标记圈内外部分,然后使用DFS遍历,输出未被标记的部分为2,其余保持原样。注意边界条件的处理,避免错误的填充情况。

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

题目https://www.luogu.org/problem/P1162

Description: 

由数字0组成的方阵中,有一任意形状闭合圈,闭合圈由数字1构成,围圈时只走上下左右4个方向。现要求把闭合圈内的所有空间都填写成2.

 Solution

围圈内的部分不要动,把围圈和围圈外的部分进行标记,输出时,没有标记的部分,即圈内部分输出为2,其余按原图输出。

注意,在进行dfs时图要比实际输入的图大一圈,防止出现以下情况

6
0 0 0 0 0 0                0 0 0 0 0 0                                                  0 0 0 0 0 0 
0 0 1 1 1 1      输出   0 0 1 1 1 1               正确结果应当为:         0 0 1 1 1 1 
0 1 1 0 0 1        =>    0 1 1 2 2 1         

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值