样例全过,0分,求助!
查看原帖
样例全过,0分,求助!
735164
pengqiushi楼主2023/1/3 21:38

代码如下:

#include<iostream>
using namespace std;
char a[505][505];
int n,m;
void dfs(int x,int y){
	a[x][y]='-';
	if(a[x+1][y]=='0'&&x<=n)
		dfs(x+1,y);
	if(a[x-1][y]=='0'&&x>=0)
		dfs(x-1,y);
	if(a[x][y+1]=='0'&&y<=m)
		dfs(x,y+1);
	if(a[x][y-1]=='0'&&y>=0)
		dfs(x,y-1);
	return;
}
int main()
{
	cin>>n>>m;
	for(int i=0; i<=n; i++)
		for(int j=0; j<=m; j++)
			a[i][j]='0';
	for(int i=1; i<=n; i++)
		for(int j=1; j<=m; j++)
			cin>>a[i][j];
	dfs(0,0);
	int c=0;
	for(int i=1; i<=n; i++)
		for(int j=1; j<=m; j++)
			if(a[i][j]=='0')
				c++;
	cout<<c;
	/*cout<<endl;
	for(int i=0; i<=n; i++){
		for(int j=0; j<=m; j++)
			cout<<a[i][j]<<" ";
		cout<<endl;
	}*/
	return 0;
}

评测记录

2023/1/3 21:38
加载中...