DFS
2024-08-17 18:36:49
发布于:北京
3阅读
0回复
0点赞
#include "bits/stdc++.h"
using namespace std;
char arr[21][21];
int n,m;
int dfs(int x,int y)
{
if(x<1||x>n||y<1||y>m)
return 0;
if(arr[x][y]=='#')
return 0;
arr[x][y]='#';
return 1+dfs(x-1,y)+dfs(x+1,y)+dfs(x,y-1)+dfs(x,y+1);
}
int main()
{
cin>>m>>n;
int x,y;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
{
cin>>arr[i][j];
if(arr[i][j]=='@')
{
x=i;
y=j;
}
}
cout<<dfs(x,y)<<endl;
return 0;
}
这里空空如也
有帮助,赞一个