MLE+TLE求助
查看原帖
MLE+TLE求助
1356690
Bigcommenter楼主2025/1/10 22:24

本蒟蒻实力不强,还请各位大佬多多帮助

这道题我提交上去80分,有一个MLE和一个TLE

代码:

#include<bits/stdc++.h>
using namespace std;
struct node
{
	int x,y;
};
char a[105][105];
int n,m,ans,dx[10]={0,0,1,1,-1,-1,-1,1},dy[10]={-1,1,1,-1,1,-1,0,0};
queue<node>que;
void bfs(int x,int y)
{
	node t;
	t.x=x;
	t.y=y;
	que.push(t);
	while(!que.empty())
	{
		node tt;
		tt.x=que.front().x;
		tt.y=que.front().y;
		for(int i=0;i<8;i++)
		{
			node l;
			l.x=tt.x+dx[i];
			l.y=tt.y+dy[i];
			if(l.x>=1&&l.x<=n&&l.y>=1&&l.y<=m&&a[l.x][l.y]=='W')
				que.push(l); 
		}
		que.pop();
		a[tt.x][tt.y]='.';
	}
}
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]=='W')
			{
				++ans;
				bfs(i,j); 
			}
		}
	cout<<ans;
	return 0;
}

回复必关 谢谢各位大佬!!!

2025/1/10 22:24
加载中...