求助!!
查看原帖
求助!!
785636
2022_37_yzyUUU楼主2023/7/15 15:02
#include<bits/stdc++.h>
using namespace std;
char s[101][101];
int n,m,t; 
int p[8][2]={{-1,1},{0,1},{1,1},{-1,0},{1,0},{-1,-1},{0,-1},{1,-1}};
void bfs(int x,int y){
	s[x][y]='.';
	for(int i=0;i<8;i++){
		int xx=x+p[i][0],yy=y+p[i][1];
		if(xx>0&&xx<m&&yy>0&&yy<n&&s[xx][yy]=='W')bfs(xx,yy);
	}
} 
int main()
{
	cin>>n>>m
	for(int i=1;i<=n;i++a)
		for(int j=1;j<=m;j++){
			cin>>s[i][j];
		}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++)
			if(s[i][j]=='W')
			{	
				t++;
				bfs(i,j);
			}
	}
	cout<<t;
	return 0;
}

2023/7/15 15:02
加载中...