玄关救命,B4040GESP4级的题,在线等
  • 板块灌水区
  • 楼主cxk_ctrl
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/12/5 21:34
  • 上次更新2024/12/6 14:49:02
查看原帖
玄关救命,B4040GESP4级的题,在线等
1210072
cxk_ctrl楼主2024/12/5 21:34

https://www.luogu.com.cn/problem/B4040

my code:

#include<bits/stdc++.h>
using namespace std;
char use[110][110];
char sample[5][5];
int n,m;
bool is_ok(int x,int y)
{
	for(int i=1;i<=3;i++)
	{
		for(int j=1;j<=3;j++)
		{
			if(use[x+i][y+j]!=sample[i][j])
			{
				return false;
				//有一处不符合sample 
			}
		}
	}
	return true;//all clear! 
}
int main()
{
	for(int i=0;i<=3;i++)
	{
        sample[0][i] = sample[3][i] = '0';
    }
    sample[1][0] = sample[1][3] = sample[2][0] = sample[2][3] = '0';
    sample[1][1] = sample[1][2] = sample[2][1] = sample[2][2] = '1';
	//给sample赋值 
	int t;
	cin>>t;
	while(t--)
	{
		cin>>n>>m;
		for(int i=1;i<=n;i++)
		{
			for(int j=1;j<=m;j++)
			{
				cin>>use[i][j];
			}
		}
		if(n<4||m<4)//根本就不行 
		{
			cout<<"No"<<endl;
			continue;
		}
		else
		{
			for(int i=1;i<=n-3;i++)
			{
				for(int j=1;j<=m-3;j++)
				{
					//为了节省时间-3
					 if(is_ok(i,j))
					 {
					 	cout<<"Yes"<<endl;
					 	continue;
					 }
				}
			}
			cout<<"No"<<endl;
			continue;
			//都没过 
		}
	}
	return 0;
}
2024/12/5 21:34
加载中...