当前位置: 首页 > news >正文

苏州园区一站式服务中心湛江做网站电话

苏州园区一站式服务中心,湛江做网站电话,课程商城网站模板,汉中市建设工程信息申报系统题目描述 由数字00组成的方阵中#xff0c;有一任意形状闭合圈#xff0c;闭合圈由数字11构成#xff0c;围圈时只走上下左右44个方向。现要求把闭合圈内的所有空间都填写成22.例如#xff1a;6 \times 666的方阵#xff08;n6n6#xff09;#xff0c;涂色前和涂色后的… 题目描述 由数字00组成的方阵中有一任意形状闭合圈闭合圈由数字11构成围圈时只走上下左右44个方向。现要求把闭合圈内的所有空间都填写成22.例如6 \times 66×6的方阵n6n6涂色前和涂色后的方阵如下 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 10 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输入格式 每组测试数据第一行一个整数n(1 \le n \le 30)n(1≤n≤30) 接下来nn行由00和11组成的n \times nn×n的方阵。 方阵内只有一个闭合圈圈内至少有一个00。 //感谢黄小U饮品指出本题数据和数据格式不一样. 已修改(输入格式) 输出格式 已经填好数字22的完整方阵。 输入输出样例 输入 #1复制 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输出 #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说明/提示 1 \le n \le 301≤n≤30   题解 这道题有一个简单的算法就是输入时将所有为0的数据都填写为2然后从4个边向内部进行BFS如果搜索到2就将其改为0并继续搜索如果搜索到1或0就停止搜索。 1 #include iostream2 #include stdio.h3 #include math.h4 #include algorithm5 #include string.h6 7 using namespace std;8 9 const int MAXN 105;10 int n, map[MAXN][MAXN], vis[MAXN][MAXN];11 int pos[4][2] {0, 1, 0, -1, 1, 0, -1, 0};12 13 struct Node14 {15 int x, y;16 };17 18 Node q[MAXN];19 int front, rear;20 int a, b;21 22 void bfs()23 {24 Node now;25 now.x a;26 now.y b;27 if(map[a][b] ! 2)28 {29 return;30 }31 front rear 0;32 q[rear] now;33 rear; 34 while(front rear)35 {36 now q[front]; 37 if(map[now.x][now.y] 2)38 {39 map[now.x][now.y] 0;40 }41 if(now.x 7)42 {43 now.x 7;44 }45 for(int i 0; i 4; i) 46 {47 int nx now.x pos[i][0]; 48 int ny now.y pos[i][1]; 49 if(nx n nx 0 ny n ny 0 50 vis[nx][ny] false 51 map[nx][ny] 2) 52 {53 map[nx][ny] 0;54 vis[nx][ny] true;55 q[rear].x nx;56 q[rear].y ny;57 rear;58 }59 } 60 }61 }62 63 64 int main()65 {66 cin n;67 for(int i 1; i n; i)68 {69 for(int j 1; j n; j)70 {71 cin map[i][j];72 if(map[i][j] 0)73 {74 map[i][j] 2;75 }76 }77 }78 for(int i 1; i n; i)79 {80 a 1;81 b i;82 bfs();83 }84 for(int i 1; i n; i)85 {86 a n;87 b i;88 bfs();89 }90 for(int i 1; i n; i)91 {92 a i;93 b 1;94 bfs();95 }96 for(int i 1; i n; i)97 {98 a i;99 b n; 100 bfs(); 101 } 102 for(int i 1; i n; i) 103 { 104 for(int j 1; j n; j) 105 { 106 cout map[i][j] ; 107 } 108 cout endl; 109 } 110 return 0; 111 } 这个BFS并不难写不过当时犯了一个小错误导致2/3/4个样例都是WA特别是第2个样例在本机输出的结果和标准答案一致但是提交后总是说一个位置应该为0输出了2。查了很久最后发现是把pos[4][2]写成了pos[2][4]。数组定义错了导致遍历时移动的位置错误了而且本机的对应内存的数据和测试机不同所以在本机上是过了但是测试机没有过。 转载于:https://www.cnblogs.com/zealsoft/p/11404420.html
http://www.zqtcl.cn/news/416654/

相关文章:

  • 东莞建网站公司哪个好陕西手机网站建设公司
  • 网站系统里不能打印西安哪有学做淘宝网站
  • 哈尔滨建站模板大全天猫购买
  • 去后台更新一下网站百度最新版下载
  • 盐城网站开发教育建设网站
  • 目前网站开发有什么缺点广东品牌网站建设968
  • 东营做网站优化哪家好简单网站的制作
  • c可以做网站么网站为何不显示百度商桥对话框
  • 音乐网站用dw怎么做怎么做自己的网站教程
  • 网站换域名后需要多长时间才能收录恢复正常做文案公众号策划兼职网站
  • 丹阳做网站的公司重庆建设医院网站
  • 罗湖网站设计费用在线设计平台行业环境
  • 舟山市普陀区建设局网站淘宝怎样优化关键词
  • 网页上做ppt的网站好花西子网络营销案例分析
  • 网站设计说明书主要有什么成都企业网站seo
  • 免费素材下载网站网站建设进度时间表
  • 网站做关键词首页什么是网络营销?如何理解它的产生和把握它的特点?
  • centos做网站扬州市邗江区城乡建设局网站
  • 宁波网站建设模板制作企业做网站的作用
  • 南通网站快速收录禁止wordpress自动更新
  • 济南做网站最好的公司做一电影网站怎么赚钱吗
  • 中国城市建设网站宿州网站建设零聚思放心
  • 佛山网站免费制作struts2 做的网站
  • 做网站需要了解什么软件电商网站建设方案道客巴巴
  • 网站开发语言用什么好网站好坏怎么分析
  • 镇江制作网站的dw新建站点
  • 如果将域名指向网站东营网站建设收益高
  • 沈阳seo网站推广优化c2c网站的功能
  • 网站设计深圳云南制作网站的公司
  • 广州的网站建设公司对网络平台的优化有哪些建议