求大佬帮帮,不知道哪错了
  • 板块P1683 入门
  • 楼主Yzh_Official
  • 当前回复12
  • 已保存回复12
  • 发布时间2022/2/25 13:52
  • 上次更新2023/10/28 07:47:33
查看原帖
求大佬帮帮,不知道哪错了
675119
Yzh_Official楼主2022/2/25 13:52
#include <iostream>
#include<cmath>
#include<cstring>

using namespace std;
int m,n;
char a[30][30];
int c[30][30];
void dfs(int a0,int b){
	if(a0<0||b<0||a0>n||b>m){return;}
	if(c[a0][b]==1||c[a0][b]==-1){return;}
	c[a0][b]=1;
	dfs(a0+1,b);
		dfs(a0-1,b);
			dfs(a0,b+1);
				dfs(a0,b-1);

	
}
int main(){
memset(c,0,sizeof c);

cin>>m>>n;
int a0,b;
for(int i=0;i<n;i++){
	for(int j=0;j<m;j++){
		cin>>a[i][j];
		if(a[i][j]=='#'){
			c[i][j]=-1;
		}else{
			if(a[i][j]=='@'){a0=i;b=j;}
			c[i][j]=0;}
	}
}
dfs(a0,b);
int count=0;
for(int i=0;i<n;i++){
	for(int j=0;j<m;j++){
	count++;
		}
}
cout<<count;

}
2022/2/25 13:52
加载中...