没过样例qwq……
查看原帖
没过样例qwq……
955954
Miracle_InDream楼主2023/11/17 21:41
#include<bits/stdc++.h>
using namespace std;
int main()
{
	int r,c,n,m,sum=0;
	cin>>r>>c>>n>>m;
	char a[35][35];
	for(int i=1;i<=r;i++)
	{
		for(int j=1;j<=c;j++)
		{
			cin>>a[i][j];
		}
	}
	for(int i=1;i<=r;i++) 
	{
		for(int j=1;j<=c;j++)
		{
			if(a[i][j]=='M')
			{
				bool flag=1;
				int ans=0;
				for(int k=i;k>0;k--)
				{
					if(a[k][j]=='F')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				for(int k=i;k<=r;k++)
				{
					if(a[k][j]=='F')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				for(int k=j;k>0;k--)
				{
					if(a[i][k]=='F')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				for(int k=j;k<=c;k++)
				{
					if(a[i][k]=='F')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				if(ans>=3)
				{
					sum++;
				}
			}
			if(a[i][j]=='F')
			{
				bool flag=1;
				int ans=0;
				for(int k=i;k>0;k--)
				{
					if(a[k][j]=='M')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				for(int k=i;k<=r;k++)
				{
					if(a[k][j]=='M')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				for(int k=j;k>0;k--)
				{
					if(a[i][k]=='M')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				for(int k=j;k<=c;k++)
				{
					if(a[i][k]=='M')
					{
						flag=0;
						break;
					}
				}
				if(flag)
				{
					ans++;
				}
				if(ans>=3)
					sum++;
			}
		}
	}
	cout<<sum; 
	return 0;
}
2023/11/17 21:41
加载中...