有同学能帮我看看本题思路有什么问题吗?

P1162 填涂颜色

jjj0523 @ 2023-03-04 15:06:10

P1162 填涂颜色 https://www.luogu.com.cn/problem/P1162?contestId=96615 我的思路: ① 从a[0][0]入队,后a[0][0]出队,后先把a[1][0]入队,再把a[0][1]入队,两者的顺序不可以颠倒 ② 之后以a[i][j]不断出队,a[i+1][j]和a[i][j+1]入队 若出队元素为0,则对于本元素正下一个元素和正右一个不予修改 若出队元素为1或者是2,则对于本元素正下一个元素和正右一个是0的元素修改为2 ③ 其中需要有边界的判断,分为副主对角线之上和之下,副主对角之上不需要判断矩阵边界,副主对角线之下需要判断边界,判断边界的条件是:(若矩阵维数为n,则当行下标i为n-1或者是当列下标j为n-1)

循环停止的条件:由此不断出队和入队,BFS遍历所有节点,循环结束的条件是出队的元素数量是n*n(矩阵维数为n)则停止循环

- 1.


by haogec123 @ 2023-03-04 15:21:24

你没有学搜索,这题应该很难做


by kkk_fans @ 2023-03-04 15:22:32

这题搜索做就很简单,洪水填充之后把0改成1就好了


by rzm120412 @ 2023-03-04 15:31:59

dfs

@jjj0523 需要代码吗?


by rzm120412 @ 2023-03-04 15:32:31

记得“@”


by EmptyAlien @ 2023-03-04 15:38:48

用状压DP来做就很简单了(wu


by jjj0523 @ 2023-03-04 15:52:57

@haogec123 这题标签不就是BFS吗


by jjj0523 @ 2023-03-04 15:54:17

我只是想问问我的思路有问题吗或者是有遗漏?


by haogec123 @ 2023-03-04 16:09:58

我没太看懂,但是以我的理解你对于这个数据会WA

6
0 0 0 0 0 0
0 1 1 1 0 0
1 1 0 1 1 1
1 0 0 0 0 1
1 1 1 1 1 1 
0 0 0 0 0 0

你的答案应该是

6
0 0 0 0 0 0
0 1 1 1 2 2
1 1 2 1 1 1
1 2 2 2 2 1
1 1 1 1 1 1 
0 0 0 0 0 0

by jjj0523 @ 2023-03-04 18:06:41

@haogec123 谢谢!!!


by Jason_LiDongJin @ 2023-05-14 12:42:20

我的思路: \

$Step2:$ 从(0,0)开始填充,将闭合圈外的“2”换成“0”.

|