C.十面埋伏(DFS连通块)
C.十面埋伏(DFS&连通块)
题目传送门
题意:将”#“图案用星号围一圈并输出图。
思路:显然从外围DFS,判断一下四周有无#即可。
AC代码:
#include<bits/stdc++.h>
using namespace std;
int n,m;
char mp[505][505];
int vis[505][505],d[4][2]={0,1,0,-1,1,0,-1,0};
void dfs(int x,int y){//printf("x=%d,y=%d\n",x,y);if(x<1||x>n||y<1||y>m) return;if(vis[x][y]||mp[x][y]=='#') return;vis[x][y]=1;for(int i=0;i<4;i++){int nx=x+d[i][0],ny=y+d[i][1];if(mp[nx][ny]=='#') mp[x][y]='*';}dfs(x+1,y),dfs(x-1,y),dfs(x,y+1),dfs(x,y-1);
}
int main(){scanf("%d%d",&n,&m);for(int i=1;i<=n;i++) scanf("%s",mp[i]+1);dfs(1,1);for(int i=1;i<=n;i++)printf("%s\n",mp[i]+1);return 0;
}
C.十面埋伏(DFS连通块)相关推荐
- HDU - 1547 Bubble Shooter(dfs+连通块+模拟)
题目链接:点击查看 题目大意:模拟泡泡枪游戏,问当击破指定位置的泡泡时,能有多少个泡泡同时爆炸? 题目分析:一个中规中矩的连通块问题,只不过在向四周扩散的时候需要注意的是,奇数行和偶数行的方向有点不一 ...
- 中石油训练赛 - Bee Problem(dfs+连通块)
题目描述 You are a busy little bee, and you have a problem. After collecting nectar all day long, you ar ...
- Multiplayer Moo[ [ 并查集+dfs连通块 ] / [ dfs ] ]
题目链接 题目描述: The cows have come up with a creative new game, surprisingly giving it the least creative ...
- 海拉鲁城堡问题(dfs连通块)
思路: 1. 一开始想着把墙当成图的一部分记下来,但发现比较麻烦而且不会区分没有墙和房间的地方:可以把墙当作判定条件之一在方位循环里处理. 2.这是典型的连通块问题:在主函数里循环找另外的节点,再对该 ...
- *【ZOJ - 3781】Paint the Grid Reloaded(dfs求连通块缩点,bfs求最短路,建图技巧)
题干: Leo has a grid with N rows and M columns. All cells are painted with either black or white initi ...
- [C] [编程题]连通块(DFS解决)
时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 256M,其他语言512M 来源:牛客网 金山办公2020校招服务端开发工程师笔试题(一) 题目描述 给一个01矩阵,1代表是陆地,0代表 ...
- UVa572 Oil Deposits DFS求连通块
技巧:遍历8个方向 for(int dr = -1; dr <= 1; dr++)for(int dc = -1; dc <= 1; dc++)if(dr != 0 || dc != 0) ...
- DFS求连通块数目(深搜)
DFS求连通块数目 这里认为,连通块是包括斜对角线的路径连通的块. 测试数据 5 5 ****@ *@@*@ *@**@ @@@*@ @@**@ 计算通过@相连的连通块的个数 测试输出: 2 样例代码 ...
- [uva]AncientMessages象形文字识别 (dfs求连通块)
非常有趣的一道题目,大意是给你六种符号的16进制文本,让你转化成二进制并识别出来 代码实现上参考了//http://blog.csdn.net/u012139398/article/details/3 ...
最新文章
- opencv拟合高维曲线
- 关于angularjs dom渲染结束再执行的问题
- Django Book 2.0 笔记——会话、用户和注册
- ELM327 scanners work on iPhone, iPad and iPod
- PAT 1004 成绩排名 (20)(代码)
- Mathematica .nb程序运行不下去的原因
- 截取数组中的第i个元素,并返回截取后的结果
- 防止U盘中病毒的小技巧
- C++实用编程——随机生成迷宫算法
- Java第四次作业,面向对象高级特性(继承和多态)
- 牛客JS编程大题(一)
- [整理]WebUploader + SpringMVC 实现多文件断点续传之二 多文件断点续传
- 【总结】仰望星空,脚踏实地 2017.09-2018.02
- 团队管理的四大挑战——留人篇
- trc20地址监听php,Tron/USDT-TRC20 PHP开发包
- 回溯法解决n皇后问题
- m4s格式转换mp3_下载的mp3音频怎么转换wav格式
- 树莓派上控制蜂鸣器模拟摩尔斯电码(电报效果)
- IOS10-IOS13屏蔽系统更新描述文件|去除‘设置’①小红点教程
- 用好了下一代文件系统 Btrfs 这些新特性,从此数据安全乐无忧!