1
查看原帖
1
1329573
Felix11451楼主2024/4/21 17:21
#include<bits/stdc++.h>
using namespace std;
char fi[1000][1000];
bool visit[1000][1000];
int r,c,a,b,sum=0,qx[]={0,0,1,-1},qy[]={1,-1,0,0};
int bfs(int x,int y)
{
	visit[x][y]=1;
	int xx,yy;
	if(fi[x][y]=='L')
		sum+=10;
	if(fi[x][y]=='M')
		sum+=5;
	if(fi[x][y]=='S')
		sum+=1;
	for(int i=0;i<4;i++)
	{
		xx=x+qx[i],yy=y+qy[i];
		if(fi[xx][yy]=='*'||xx<0||yy<0||xx>=r||yy>=c||visit[xx][yy]==1)
			continue;
		else
			bfs(xx,yy);
	}
}
int main()
{
	cin>>r>>c;
	for(int i=0;i<=r-1;i++)
		for(int j=0;j<=c-1;j++)
			cin>>fi[i][j];
	cin>>a>>b;
	bfs(a,b);
	cout<<sum;
	return 0;
}```
2024/4/21 17:21
加载中...