不会QwQ
查看原帖
不会QwQ
706293
kate1234楼主2023/8/3 09:18
using namespace std;
int n,m;
char a[100][100];
int ans;
void dfs(int x,int y)
{
	int tmpx;
	int tmpy;
	int tx[4]={0,1,0,-1};
	int ty[4]={1,0,-1,0};
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			tmpx=x+tx[i];
			tmpy=y+ty[j];
			if(tmpx!='0'&&tmpy!='0'&&a[tmpx][tmpy]!='0')
			{
				a[tmpx][tmpy]='0';
			}
		}
	}
}
int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			cin>>a[i][j];
		}
	}
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			if(a[i][j]!='0')
			{
				ans++;
				a[i][j]='0';
				dfs(i,j);
			}
		}
	}
	cout<<ans-2;
	return 0;
}
2023/8/3 09:18
加载中...