Red and Black
程序员文章站
2022-05-21 17:52:53
...
Red and Black
HDU - 1312题意是从#开始,能连接到最多的‘ . ’有多少个。
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char str[521][521];
int x,y;
int fx[4] = {1,-1,0,0};
int fy[4] = {0,0,1,-1};//上下左右四个方向//
int ans;
int n,m;
void dfs(int x,int y)
{
ans++;
str[x][y] = '#'; //ans加1后将该点变成#//
for(int k = 0; k < 4; k++)
{
int xx=x+fx[k];
int yy=y+fy[k];
if(xx>=0&&yy>=0&&xx<n&&yy<m&&str[xx][yy]=='.')
{
dfs(xx,yy);//利用递归找到所有的'.'//
}
}
}
int main()
{
while(~scanf("%d%d%*c",&m,&n))//注意%*c吸收换行符,要不下面影响str数组的值//
{
if(m == 0 && n == 0)
break;
for(int i = 0; i<n; i++)
{
for(int j = 0; j<m; j++)
{
scanf("%c",&str[i][j]);
if(str[i][j] == '@') //找到@的坐标//
{
x = i;
y = j;
}
}
getchar();//吸收换行符//
}
ans = 0;
//map[i][j] = '#';
dfs(x,y);
printf("%d\n",ans);
}
return 0;
}
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1312
愿你一生清澈明朗,做你愿做之事,爱你愿爱之人!
推荐阅读
-
Red Hat Enterprise Linux / CentOS 7 yum安装zabbix4.0
-
Win7下硬盘安装 Red Hat Enterprise Linux 6.0 ES图文方法
-
映众GTX1080 Black冰龙黑金版显卡天梯图评测和拆解
-
Red Hat Linux,Apache2.0+Weblogic9.2负载均衡集群安装配置
-
Red Hat Linux上使用BIND建立DNS服务器
-
赛睿Sensei 310 Glossy Red火星红开箱图赏:鲜红夺目
-
经过了近两年的跳票后 RED Hydrogen One钛合金版终于开始出货
-
西数发布WD Black SN750 SSD:游戏模式一键加速
-
Red Hat宣称云计算比微软强大 无视VMware
-
windows系统安装虚拟机VMware12,然后在虚拟机中安装Red Hat Enterprise Linux6操作系统