首页 > TAG信息列表 > P1162
洛谷 P1162 填涂颜色
题目链接:https://www.luogu.com.cn/problem/P1162 试题分析:本题运用广搜,我们大体思路是这样的: 首先,我们将起始位置放到队尾,然后,在队列不为空的情况下,我们要一直取队首并拓展,寻找与第一个0相连的所有0(也就是圈外的0)并标记。最后在输出时,只要将所有的未被标记的0输出2即可。 注意我P1162 填涂颜色题解
题目传送门 理解与感悟 1、从边缘出发进行思考。 2、把外围所有0涂色干掉,再剩下的0就是被包裹住的0,这些0需要修改为2. 3、所以OI的竞赛题,几乎没有祼的模板题,都是需要一点点思维难度的。这需要进行训练,刷题,没有别的办法。 #include <bits/stdc++.h> using namespace std; const inP1162 填涂颜色
题目描述 由数字0 组成的方阵中,有一任意形状闭合圈,闭合圈由数字1构成,围圈时只走上下左右4个方向。现要求把闭合圈内的所有空间都填写成2.例如:6X6的方阵(n=6),涂色前和涂色后的方阵如下: 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1洛谷 P1162 填涂颜色-dfs染色法
输入: 6 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 0 0 0 0 1 1 1 1 1 1 1 输出: 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 2 2 1 1 1 2 2 2 1 1 2 2 2 2 1 1 1 1 1 1 1 代码如下: #include <iostream> using namespace std; const int N = 40; int mp[N][N], mps[N][N]P1162 填涂颜色(DFS 解题方式新颖
题目链接https://www.luogu.com.cn/problem/P1162//一开始想找如何判断0在1的封闭曲线内,后来发现只要找在1之外的就可以//而在1之外的点,一般都可以通过不断扩展最后与边缘相接//所以只要dfs四个边上为0的点,不断往里找0,并把其的vis赋值为1//最后vis既不是1,而且图a中那个点也不是1,洛谷 P1162 填涂颜色
菜鸟生成记(34) 洛谷 P1162 填涂颜色 思路: (1)双层for循环逐点访问 (2)bfs判断该点是否在圈内(被1包围的圈内0,其行坐标和列坐标不可能为0,或n-1(n最大行列数)) (3)然后dfs将该点能够到达的所有点染色(赋值2),同时每个点被访问后,做标记,减少后续不必要的重复访问; 推荐使用ST【洛谷p1162】填涂颜色
(今天yy出奇的不活泼,认真的吓人) 【传送门】 算法标签: 思路啊qwq: part1: 想法是先暴搜出每一行的1,取最前方一个1和最后方一个1,然后中间的0填上色,80分,因为没有考虑到“00011100101”这样类似的的情况。 #include<iostream>#include<cstring>#include<algorithm>#include<cstdio>洛谷 P1162 填涂颜色
题目描述 由数字000组成的方阵中,有一任意形状闭合圈,闭合圈由数字111构成,围圈时只走上下左右444个方向。现要求把闭合圈内的所有空间都填写成222.例如:6×66 \times 66×6的方阵(n=6n=6n=6),涂色前和涂色后的方阵如下: 0 0 0 0 0 00 0 1 1 1 10 1 1 0 0 11 1 0 0 0 11 0 0 0 0 11 1 1 1