求解错误原因!!!
原题链接:21482.走迷宫2025-09-13 11:07:24
发布于:浙江
#include<bits/stdc++.h>
using namespace std;
int ax[4]={0,1,0,-1};
int ay[4]={1,0,-1,0};
int a[45][45];
int n,m,cnt;
void dfs(int x,int y){
a[x][y]=1;
for(int i=0;i<4;i++){
int nx=x+ax[i];
int ny=y+ay[i];
if(nx>=1&&nx<=n&&ny>=1&&ny<=m&&a[nx][ny]!=1){
cnt++;
dfs(nx,ny);
}
}
return;
}
int main(){
int x,y;
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
char b;
cin>>b;
if(b=='.'){
a[i][j]=0;
}else if(b=='@'){
a[i][j]=0;
x=i;
y=j;
}else{
a[i][j]=1;
}
}
}
cnt++;
dfs(x,y);
cout<<cnt;
return 0;
}
全部评论 2
读题
8小时前 来自 浙江
0读题
8小时前 来自 北京
0
有帮助,赞一个