QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#641369#5070. Check Pattern is BadsyxsyxAC ✓108ms4000kbC++143.4kb2024-10-14 20:12:172024-10-14 20:12:17

Judging History

你现在查看的是最新测评结果

  • [2024-10-14 20:12:17]
  • 评测
  • 测评结果:AC
  • 用时:108ms
  • 内存:4000kb
  • [2024-10-14 20:12:17]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int N=105,M=10005;
int T;
int n,m;
char a[N][N];
int typ[N][N];
struct nd
{
	int x,y;
	bool operator <(const nd &b) const
	{
		return x<b.x||x==b.x&&y<b.y;
	}
};
set <nd> hav1,hav2;
set <nd> ::iterator it;
bool upd(int x,int y)
{
	if(x<1||y<1||x>=n||y>=m) return true;
	if(1<=typ[x][y]&&typ[x][y]<=2)
	{
		if(typ[x][y]==1) hav1.erase((nd){x,y});
		if(typ[x][y]==2) hav2.erase((nd){x,y});
	}
	int cnt=(a[x][y]=='?')+(a[x+1][y]=='?')+(a[x][y+1]=='?')+(a[x+1][y+1]=='?');
	if(cnt==0&&a[x][y]=='W'&&a[x+1][y+1]=='W'&&a[x+1][y]=='B'&&a[x][y+1]=='B') return false;
	if(cnt==0&&a[x][y]=='B'&&a[x+1][y+1]=='B'&&a[x+1][y]=='W'&&a[x][y+1]=='W') return false;
	if((a[x][y]==a[x+1][y]||a[x][y]==a[x][y+1])&&a[x][y]!='?') cnt=0;
	if((a[x+1][y]==a[x+1][y+1]||a[x][y+1]==a[x+1][y+1])&&a[x+1][y+1]!='?') cnt=0;
	if(a[x][y]!=a[x+1][y+1]&&a[x][y]!='?'&&a[x+1][y+1]!='?') cnt=0;
	if(a[x+1][y]!=a[x][y+1]&&a[x+1][y]!='?'&&a[x][y+1]!='?') cnt=0;
	if(cnt==2)
	{
		if(a[x][y]=='?'&&a[x+1][y]=='?') cnt=0;
		if(a[x][y]=='?'&&a[x][y+1]=='?') cnt=0;
		if(a[x][y+1]=='?'&&a[x+1][y+1]=='?') cnt=0;
		if(a[x+1][y]=='?'&&a[x+1][y+1]=='?') cnt=0;
	}
//	printf("%d %d %d\n",x,y,cnt);
	typ[x][y]=cnt;
	if(1<=typ[x][y]&&typ[x][y]<=2)
	{
		if(typ[x][y]==1) hav1.insert((nd){x,y});
		if(typ[x][y]==2) hav2.insert((nd){x,y});
	}
	return true;
}
bool update(int x,int y)
{
	if(!upd(x-1,y-1)) return false;
	if(!upd(x,y-1)) return false;
	if(!upd(x-1,y)) return false;
	if(!upd(x,y)) return false;
	return true;
}
bool check()
{
	for(int i=1;i<n;i++)
		for(int j=1;j<m;j++)
			if(!upd(i,j)) return false;
	while(!hav1.empty()||!hav2.empty())
	{
//		printf("\n");
//		for(int i=1;i<=n;i++){
//			for(int j=1;j<=m;j++) printf("%c",a[i][j]);printf("\n");}
		if(!hav1.empty())
		{
			it=hav1.begin();
			int x=(*it).x,y=(*it).y;
//			printf("1:%d %d\n",x,y);
			int tmpx=0,tmpy=0;
			if(a[x][y]=='?') tmpx=x,tmpy=y,a[tmpx][tmpy]=a[x][y+1];
			if(a[x+1][y]=='?') tmpx=x+1,tmpy=y,a[tmpx][tmpy]=a[x][y];
			if(a[x][y+1]=='?') tmpx=x,tmpy=y+1,a[tmpx][tmpy]=a[x][y];
			if(a[x+1][y+1]=='?') tmpx=x+1,tmpy=y+1,a[tmpx][tmpy]=a[x][y+1];
			if(!update(tmpx,tmpy)) return false;
			continue;
		}
		if(!hav2.empty())
		{
			it=hav2.begin();
			int x=(*it).x,y=(*it).y;
			int tmpx=0,tmpy=0;
			if(a[x][y]=='?') tmpx=x,tmpy=y,a[x][y]=a[x+1][y];
			if(a[x+1][y]=='?') tmpx=x+1,tmpy=y,a[x+1][y]=a[x][y];
			if(!update(tmpx,tmpy)) return false;
			continue;
		}
	}
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++) if(a[i][j]=='?') a[i][j]='W';
	return true;
}
void init()
{
	hav1.clear();
	hav2.clear();
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++) typ[n][m]=0;
}
bool ast()
{
	for(int i=1;i<n;i++)
		for(int j=1;j<m;j++)
		{
			if(a[i][j]=='W'&&a[i+1][j]=='B'&&a[i][j+1]=='B'&&a[i+1][j+1]=='W') return false;
			if(a[i][j]=='B'&&a[i+1][j]=='W'&&a[i][j+1]=='W'&&a[i+1][j+1]=='B') return false;
		}
	return true;
}
int main()
{
//	freopen("tmp.in","r",stdin);
//	freopen("tmp.out","w",stdout);
	scanf("%d",&T);
	int nowT=0;
	while(T--)
	{
		cerr<<"#"<<++nowT<<'\n';
		scanf("%d%d",&n,&m);
		init();
		for(int i=1;i<=n;i++)
			for(int j=1;j<=m;j++) scanf(" %c",&a[i][j]);
		if(!check()){printf("NO\n");continue;}
		assert(ast());
		printf("YES\n");
		for(int i=1;i<=n;i++){
			for(int j=1;j<=m;j++) printf("%c",a[i][j]);printf("\n");}
	}
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3768kb

input:

3
2 2
??
??
3 3
BW?
W?B
?BW
3 3
BW?
W?W
?W?

output:

YES
WW
WW
NO
YES
BWW
WWW
WWW

result:

ok ok (3 test cases)

Test #2:

score: 0
Accepted
time: 40ms
memory: 3844kb

input:

10000
9 2
BB
BW
WW
WW
?W
?B
B?
W?
BB
6 2
??
?B
B?
BW
WW
??
10 7
WBBBW??
???BWWW
???BWWB
??WWBW?
BBWBBWB
WWB?WW?
BWBW???
WWWWBBW
BBWBB?W
B?W?W?B
4 7
??WBWWB
?BBWWWB
?W?BBB?
BBBWBBB
10 1
B
W
?
B
B
W
W
W
B
?
10 4
??WW
W?W?
WWW?
???W
?W??
?W?W
W?W?
?W?W
???W
???W
8 3
WBW
W??
???
???
W?W
W?W
???
?W?
4 1
...

output:

YES
BB
BW
WW
WW
WW
BB
BW
WW
BB
YES
WW
BB
BW
BW
WW
WW
NO
NO
YES
B
W
W
B
B
W
W
W
B
W
YES
WWWW
WWWW
WWWW
WWWW
WWWW
WWWW
WWWW
WWWW
WWWW
WWWW
YES
WBW
WWW
WWW
WWW
WWW
WWW
WWW
WWW
YES
W
B
W
W
YES
WBWB
WWWB
YES
BWWBBB
WWWWWB
YES
WWWWW
YES
BWWWWW
WWBWWB
BBBWWW
WWWWWW
YES
W
YES
BWB
BBB
WBW
WBB
WWB
BBB
BWW
WWW...

result:

ok ok (10000 test cases)

Test #3:

score: 0
Accepted
time: 43ms
memory: 3824kb

input:

10000
9 6
?B?W?W
WWBBWB
?WB?BW
B?W?W?
WW??W?
B???BW
?W?WW?
W?B?B?
?W?BB?
10 1
W
?
?
?
?
?
?
?
B
W
9 4
????
????
W???
?W?B
??WW
?BW?
WW?W
??W?
??W?
3 2
?W
?B
BB
2 7
?W?BWWB
??W???W
9 9
?BW?WWW?W
BW?WBBWWW
W?W????WW
W??WW??WW
W?BWB?B?W
??BB?WWWW
W???WBW?W
WWW???WWW
B?WWWWWW?
8 10
W??BWWW??B
?BWBWBW?BW...

output:

NO
YES
W
W
W
W
W
W
W
W
B
W
YES
WWWW
WWWW
WWWW
WWWB
WWWW
WBWW
WWWW
WWWW
WWWW
YES
WW
WB
BB
YES
WWWBWWB
WWWWWWW
NO
NO
YES
WWB
BWW
BBB
WWW
WWW
YES
WWWWWWWWW
WWWWWWWWW
WWWWWWWWW
WWWWWWWWW
WWWWWWWWW
WWWWWWWWW
WWWWWWWWW
YES
WBWWWWW
WBBWWWW
WWWWWWW
BWWWWWW
BBWBWWW
WWWBWBB
WWWWWWW
WWWWWWW
WWWWBWW
YES
WW
WW
W...

result:

ok ok (10000 test cases)

Test #4:

score: 0
Accepted
time: 43ms
memory: 3816kb

input:

10000
7 7
?B??BBW
????BB?
WBBB??B
WW?B???
?B??BBB
BBWB??B
B???BB?
10 6
W?WW??
W??W??
?WWWW?
?WW?WW
WW??W?
W?????
W?WW??
WW???W
WWW??W
?W??W?
2 6
?B??W?
B???BB
1 8
??BWB?W?
5 2
WB
W?
B?
BB
?W
7 5
W????
?WW??
???W?
WWWW?
W?W?W
?W?B?
W?WWB
8 5
B?WBW
B??WW
WWW?B
WBBWB
BW?WW
B?W?B
??WWB
BBW?B
10 4
WWWW
?...

output:

YES
WBWWBBW
WWWBBBW
WBBBWBB
WWWBWWW
WBWBBBB
BBWBWBB
BWWBBBW
YES
WWWWWW
WWWWWW
WWWWWW
WWWWWW
WWWWWW
WWWWWW
WWWWWW
WWWWWW
WWWWWW
WWWWWW
YES
BBWWWW
BWWWBB
YES
WWBWBWWW
YES
WB
WW
BW
BB
WW
YES
WWWWW
WWWWW
WWWWW
WWWWW
WWWWW
WWWBB
WWWWB
NO
YES
WWWW
WWWW
WWBW
WWWW
WWWW
BWWW
WWWB
WWWW
WWWW
WBWB
YES
BWWBBB
BW...

result:

ok ok (10000 test cases)

Test #5:

score: 0
Accepted
time: 55ms
memory: 3756kb

input:

10000
1 1
?
7 9
W?WB????B
?WB??B??W
BBB?W?WB?
WWW??WWW?
WW?B??W?W
?BWW??WWW
B?WW?W?WB
3 7
??BBBB?
BW?WW??
B??B?BW
1 6
?B?WWB
7 1
W
W
W
B
?
W
?
8 8
WW??W?B?
WWW?????
BB??WWWW
?W???WBW
BBW???WB
BWBWBWW?
?W?WW??B
BB?????W
10 8
WWW?W?BW
WB?W?WBW
WW?W?WBW
WWWW?WW?
WBWB?B?W
BW?BW??B
??WWBWWB
W?BW?BWW
W?W?...

output:

YES
W
YES
WWWBWWWWB
WWBBWBWWW
BBBWWWWBW
WWWWWWWWW
WWWBWWWWW
BBWWWWWWW
BWWWWWWWB
YES
WWBBBBW
BWWWWWW
BWWBWBW
YES
WBWWWB
YES
W
W
W
B
W
W
W
NO
NO
YES
WBBWBBW
NO
YES
WBW
WBB
BBB
WWB
BWW
WWW
BBB
NO
YES
BBB
BWB
WWW
WBB
WBW
WWW
WWB
BWW
BBB
BWB
YES
WW
WB
BB
WW
BB
BW
BB
NO
YES
BB
BB
BW
BB
BB
WB
BB
WB
NO
YES
...

result:

ok ok (10000 test cases)

Test #6:

score: 0
Accepted
time: 27ms
memory: 3808kb

input:

10000
9 1
W
B
?
B
W
W
?
W
B
1 10
W??????BWB
5 8
??W??WB?
?B?WWB?W
??????B?
BB??BBBB
WB??BBB?
6 2
?B
??
WB
?B
WW
W?
1 10
WW??BW?BW?
4 3
BW?
???
B?B
??W
10 10
WW?BBW?BW?
WW?BW?????
?WWBW?WB?W
???B?BBBBB
??BBBB?BBW
?WW??W?WBB
W??BB?WBBB
BBWBW?WBBW
?W????BWB?
??BW??WBWB
1 6
??B???
6 5
WBB?W
?WWWW
WWWW?
...

output:

YES
W
B
W
B
W
W
W
W
B
YES
WWWWWWWBWB
YES
WWWWWWBW
WBWWWBBW
WWWWWWBW
BBWWBBBB
WBWWBBBW
YES
WB
WW
WB
WB
WW
WW
YES
WWWWBWWBWW
YES
BWW
WWW
BWB
WWW
NO
YES
WWBWWW
NO
YES
B
B
B
W
W
B
B
W
B
YES
WWWWWWWWW
WWWWWWWWW
WWWWWWBWW
WBWWWWWWW
WWWWWWWWW
WWWWWWWWW
WWWWWWBWW
WWWWWWWWW
YES
WWWW
WWWW
WWWW
WBWW
WWWW
WWWW
...

result:

ok ok (10000 test cases)

Test #7:

score: 0
Accepted
time: 83ms
memory: 3808kb

input:

10000
10 10
?W?WW?W??W
?BWBW?BBWW
?BB?WWW?W?
W?B?WWWWWW
?BWW?WWW?W
BWWWWWWW?W
WBBWW??B??
W??WW?W??W
WWWW?WW?W?
?W?BWW?WW?
10 10
WB?WBBWWWB
?WWWW?WB??
?B?BWW?BW?
WBWBW??W?W
B?WB?WBWWB
WWBWBBWW??
??WBBWBWBW
WWB??WWBWB
B?BWWWWBWW
WW?WWWBWWB
10 10
??W????WW?
?WW?W???W?
??W??WW?W?
WW??WW?WW?
?W??WW?WW?
?...

output:

NO
NO
YES
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWBW
WWWWWWWWWW
WWWWWWWWWW
NO
YES
WWBBWBWWWB
WWWBWBBWWB
BWBBWWBWWW
BBBBWWBWWW
WBWBBWBBWW
BBWBBWBBBB
BWWWWWBWBW
BWBBWWBWBB
WWBWWBBWWW
WWBWWWBBWW
YES
BBWBBBWWBB
BWWWWBBWBB
WWWWWWBBBW
WWBWWBBBBB
WBBBWBBWBB
WBWB...

result:

ok ok (10000 test cases)

Test #8:

score: 0
Accepted
time: 73ms
memory: 3832kb

input:

10000
10 10
?BBBBWBBB?
??W???WB??
BB?W???BB?
?B???BBB??
W??BB?WBBB
?B?B???W?W
?????BB???
?BW???B???
???BBB??BB
BWBBBBBBB?
10 10
BWW?WWB?BW
??B?WBBBWB
B??BB??BWB
BW?BWB???W
?WB?WWW?W?
B??B??W?BB
?WBB?WBB?B
BB??BBWBW?
WB??WBB?BW
?B???B?W??
10 10
??WWWB??BB
?WW???WBWW
???W??W?WW
?W?B?W?W??
WWB?WBB??W
B...

output:

YES
WBBBBWBBBW
WWWWWWWBWW
BBWWWWWBBW
WBWWBBBBWW
WWWBBWWBBB
WBWBWWWWWW
WWWWWBBWWW
WBWWWBBWWW
WWWBBBWWBB
BWBBBBBBBW
NO
YES
WWWWWBWBBB
WWWWWWWBWW
WWWWWWWWWW
WWWBWWWWWW
WWBBWBBWWW
BWWBWWWWWW
WWWWWWWWWW
WWWWWBWWWW
WBWWWBWWBW
WBBWWWWWBB
YES
WWWWWWWWWW
WWWWWWWWWW
WWBWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW...

result:

ok ok (10000 test cases)

Test #9:

score: 0
Accepted
time: 43ms
memory: 3820kb

input:

10000
1 100
WWW?BWB?BB?BBW?BWBB?W??B?B?BWWBWB?WWB??BBBBB??BBBBB?BBBWBWWW?B?BBBWW??BBBW???B???W??W??BW?B?B?W??WB?
1 100
?WBW?WB?BBBB?BWBWB???WWB?BBB?BBW?B?B??W?B??BBW??WBBW???WW?BBBB?WWB?WBB???WBBB?BBW?W??BW?B??BBBBBBBWB
1 100
W?????BBB?BB?BB?????BWWWB?B???BB??????B??BWW???B??B?B???????BBB??B?BBB???B...

output:

YES
WWWWBWBWBBWBBWWBWBBWWWWBWBWBWWBWBWWWBWWBBBBBWWBBBBBWBBBWBWWWWBWBBBWWWWBBBWWWWBWWWWWWWWWBWWBWBWWWWWBW
YES
WWBWWWBWBBBBWBWBWBWWWWWBWBBBWBBWWBWBWWWWBWWBBWWWWBBWWWWWWWBBBBWWWBWWBBWWWWBBBWBBWWWWWBWWBWWBBBBBBBWB
YES
WWWWWWBBBWBBWBBWWWWWBWWWBWBWWWBBWWWWWWBWWBWWWWWBWWBWBWWWWWWWBBBWWBWBBBWWWBBWWWWWWWWWWW...

result:

ok ok (10000 test cases)

Test #10:

score: 0
Accepted
time: 96ms
memory: 3844kb

input:

10000
100 1
W
B
B
?
B
B
B
?
B
B
B
B
W
B
B
B
?
?
B
?
B
B
?
W
B
W
?
B
?
B
W
W
?
W
?
B
?
B
B
?
W
W
B
?
B
B
?
?
W
W
B
B
?
B
B
?
B
?
?
?
W
B
W
B
?
B
W
?
?
B
B
B
B
?
B
?
W
B
B
W
B
?
W
B
B
?
B
B
?
B
?
W
?
B
?
B
B
?
B
W
100 1
?
W
?
W
?
W
W
W
W
W
B
W
?
?
B
B
?
W
?
B
W
W
W
W
?
?
?
?
W
W
B
W
W
W
W
W
?
W
W
W
?
...

output:

YES
W
B
B
W
B
B
B
W
B
B
B
B
W
B
B
B
W
W
B
W
B
B
W
W
B
W
W
B
W
B
W
W
W
W
W
B
W
B
B
W
W
W
B
W
B
B
W
W
W
W
B
B
W
B
B
W
B
W
W
W
W
B
W
B
W
B
W
W
W
B
B
B
B
W
B
W
W
B
B
W
B
W
W
B
B
W
B
B
W
B
W
W
W
B
W
B
B
W
B
W
YES
W
W
W
W
W
W
W
W
W
W
B
W
W
W
B
B
W
W
W
B
W
W
W
W
W
W
W
W
W
W
B
W
W
W
W
W
W
W
W
W
W
W
B
W
W
B
...

result:

ok ok (10000 test cases)

Test #11:

score: 0
Accepted
time: 46ms
memory: 3940kb

input:

1000
100 10
WWWB?WWW?W
W????????W
WB?W??WW?W
WBB?WWW??B
?WWWW?WW?W
?WWWW?W?WB
?B??W?W???
WW?W?BWWW?
WW?B?W?W?W
????WW??W?
BWB??WWWW?
W??W??WW??
W?WBB??WWW
?WWBBWW?WW
?WBWW?B???
???WWW???W
??WW?WWW??
????W?BW?W
???W?W?W?W
?WW?WW?WB?
BW??WW?WW?
WB?WWWWW?W
??BWW??W?W
W??B?WWWW?
WWW?W??WWW
BBBW??W?W?
??...

output:

NO
NO
NO
NO
NO
NO
NO
YES
WWWWWWWBWW
WBWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWBWWWWW
WWWWWWWWWW
WWWWBWWWWW
WBWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWBWWWBW
BBWWWWWWWW
WWWWWWWWBW
WWWWWWWWWW
WWWWWWWWWW
WWWBWWWWWW
WWWWWWWWWW
WWWWWWWWBW
WWWBWWWWWW
WWWWWWWWBW
WWWWWWWWWW
WWWWWWWBWW
WWWWWWWWWW
WWWWWWWWWW
WBWWWWWWWW
...

result:

ok ok (1000 test cases)

Test #12:

score: 0
Accepted
time: 35ms
memory: 3828kb

input:

1000
10 100
BBWB??W??B?BWB?BBB??WWWW?B???WBB??WW???WWBW?B??W??BW?BWBBBW?BWBW?WBW?B?WWB??B?B?BBWWWBBBBW?BB???B?WB
??????WWWBWBBB??W??WW??BWBW??W??????WWWB?B??B?????W?B?????W??BBBBWBW??BWWWB???WBWB?BB?WW?B????W?WWB?
WB?BBBW?B??BB?WWW?B??WBB??W?BBW??BB??BB???BB??B??WB??W?B?B?WWWWW?BB??W?W?WBB??B?WWBBB?...

output:

NO
NO
NO
NO
YES
WWBWWWWWWWWWWWWWWWWWWWWWBBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWBWWWWWWWWWWWWWWWW
WWBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWW...

result:

ok ok (1000 test cases)

Test #13:

score: 0
Accepted
time: 28ms
memory: 3896kb

input:

100
100 100
?WW?WW??WWW??BBW??WW??W???W?W?W?????W?W?BWBW??WBW????W??BB??BW?W??W????WBW?????WWB??BWW????W??W??WW?
B?????WW???B?BWWWB?WWW?WB?BB??????W??W?BWWW?BB??WWBWB?WWW????WW?W??BB?BBWB?W????W???BWWW??BBWWW???BW
W?BW??????WBB?B????W?BBW????BBW????W?W?????B?B??WW??????WWWWW?W??WW?WBW??W??W????BWWB?...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
WBWWWWWWBBWWBWWWWBWWWWWWWWWWWWWBBWWWWWBWWWBWWBBWWWWWWWWW...

result:

ok ok (100 test cases)

Test #14:

score: 0
Accepted
time: 30ms
memory: 3904kb

input:

100
100 100
B?B?W?W??BWWW?BWW??W?W??????BBB?WW??WBBWWBWBWBWW?BB?WB?WBWWWBWWB?W??W?W?BW?WW??W??W??W??W?BW??W?WBB?
W?WW???BBWBWWW?B?WBWWWBW?????W????W?WBWWWWWW??W?WW?W?BWB?W?B?W??BB?BW?BBWWW??BWWW?WW?B???W??W?WWB?WW
????WW??BW?B?BB???WWW?WWBBW?W?WBB?W?W??????B?BWWWWW??WWB?WW???W?BBB??W?BW?W??BW??WWWWW...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
WBBWWWWWBWBWWWWWWBWWWWBWBWWBBWWBWBWWWBWBWBWWWWWBWWWWBWWWWWBWWWWWWBBBBWWWWWWWWBBBWBBWWBWBBWBWBBBWBWWW
WWWWWWBWBBBBWWBBBBBWWWWWWWBBWWWWWWWWWBBBBBBWWWWBWBWWWWWWWBBBBBBWWBBBBBBWBBBBWWWBWWBBWWWWWWBBBBWWWWWB
WWWWWWWWBBWBBBBBWBWWBBBWWWWWWWBWWWBWWWBWBBWWBBWWWBBBWWW...

result:

ok ok (100 test cases)

Test #15:

score: 0
Accepted
time: 27ms
memory: 3896kb

input:

100
100 100
?BBWBBBB?BBB????BBBWWB???B?BBWBWB?BBBBBBB?W?B?BBB?W?WBBWWBBB?B?B?BB?BB?BBBBBWB?WWBBB?BBBWWB?BB???B?B
B??BBBB????BBBBBWWBBBB??BBW?B?W??BBB?B?BB?BBB??B?B?BWBBWBB?BB?BBBB?BBBBBBWBBWBBBBW?BBBBWBBBWWBBBBBB?
?BBBBWB??B?BB?BB?B?BB?BWB?BBBBBWW?WBBB?BBBWB?B??W??BB?B???BB?B?W?B?BWB?BWWB?WB?WBBB?B?...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW...

result:

ok ok (100 test cases)

Test #16:

score: 0
Accepted
time: 108ms
memory: 3760kb

input:

10000
10 10
??????????
?W?W??????
??????B???
???????W??
??????B???
??????????
?????B???W
??????????
??????????
???????W??
10 10
???W?WW???
?WWBB?WWBB
?WB??BBWBW
?W?WW?WW?B
BB???B?W??
?B?BWB??BW
BBWBWB?BB?
??BB?BB???
B?W??W????
?BBBB??BW?
10 10
??B?B??W?W
?BBBBW??B?
BBWWBB?B?B
??W??W??B?
B?W?BB???W
?...

output:

YES
WWWWWWWWWW
WWWWWWWWWW
WWWWWWBWWW
WWWWWWWWWW
WWWWWWBWWW
WWWWWWWWWW
WWWWWBWWWW
WWWWWWWWWW
WWWWWWWWWW
WWWWWWWWWW
YES
WWWWWWWWWW
WWWBBWWWBB
WWBBBBBWBW
WWWWWWWWBB
BBWWWBWWWW
WBWBWBWWBW
BBWBWBBBBW
BBBBWBBWWW
BWWWWWWWWW
BBBBBWWBWW
YES
WWBWBWWWWW
WBBBBWWBBW
BBWWBBWBBB
WWWWWWWWBW
BWWWBBWWWW
WWWWWBWWBB
WW...

result:

ok ok (10000 test cases)

Test #17:

score: 0
Accepted
time: 102ms
memory: 3836kb

input:

10000
10 10
WBWWWWBBWW
WBWWW?BWWW
WWWBBBBWWB
BBBBWBBBWW
WBBBBBWBWW
W?BBBBWWWB
BWBBWBBWBB
BBB?WBWWWB
WBWWBBWWWW
BBWWBBBWBB
10 10
B?WW??W??B
B????WWWBB
?BB?W?WWW?
WWW?W?W??W
W?BB??BBW?
B??BW???BB
WWWWW??BW?
?B?BB???W?
??W???WW??
WBB???W???
10 10
??BW?W?WW?
?BBBBBBBW?
?BBBB?BWW?
B?BBBW???B
BWBBWWW?BB
W...

output:

YES
WBWWWWBBWW
WBWWWWBWWW
WWWBBBBWWB
BBBBWBBBWW
WBBBBBWBWW
WWBBBBWWWB
BWBBWBBWBB
BBBWWBWWWB
WBWWBBWWWW
BBWWBBBWBB
YES
BWWWWWWWWB
BWWWWWWWBB
BBBWWWWWWW
WWWWWWWWWW
WWBBWWBBWW
BWWBWWWBBB
WWWWWWWBWW
WBWBBWWWWW
WWWWWWWWWW
WBBWWWWWWW
YES
WWBWWWWWWW
WBBBBBBBWW
BBBBBWBWWW
BWBBBWWWWB
BWBBWWWWBB
WWWBBWWWBW
BW...

result:

ok ok (10000 test cases)

Test #18:

score: 0
Accepted
time: 94ms
memory: 3816kb

input:

1000
100 10
W???W?BBW?
WW??BWWW??
WBB?B?W?W?
W?BB???WWB
?WWB?WW??W
W??W????WB
BW??BBWBB?
BB???W?WBB
???WBW?WW?
?WBB?WBB??
?WB?BB?WBW
W?B?WB?WB?
?BB?WWWWBB
WB??BBWW?W
WB?BW?BWBB
??W?WBWWW?
??W?BBWBB?
WW??WWW?B?
BW??BB??W?
BW??W?W?WW
??BBWW???W
BB??BBWWBW
BBW??BBWWW
??B?WBW?B?
?B?BB?B??W
W??BW?BWBW
WW...

output:

YES
WWWWWWBBWW
WWWWBWWWWW
WBBBBWWWWW
WWBBWWWWWB
WWWBWWWWWW
WWWWWWWWWB
BWWWBBWBBB
BBWWWWWWBB
WWWWBWWWWW
WWBBBWBBBW
WWBWBBBWBW
WWBWWBWWBW
WBBWWWWWBB
WBBBBBWWWW
WBWBWBBWBB
WWWWWBWWWW
WWWWBBWBBW
WWWWWWWWBW
BWWWBBWWWW
BWWWWWWWWW
BBBBWWWWWW
BBWBBBWWBW
BBWWWBBWWW
WBBWWBWWBW
WBBBBBBWWW
WWWBWWBWBW
WWWWWWBBBW...

result:

ok ok (1000 test cases)

Test #19:

score: 0
Accepted
time: 80ms
memory: 3780kb

input:

1000
10 100
?????????BBW??????B??WWWW??WW????????WW???W?WBBB????????W?B?W???W?W??W???????B?BW?????B??????B??????
??????B?W??W?W??B?????WBWB?W?????????????WWB????WWW??????W?????????????????W????W?W????W???W?W??B???
BB?B???WWW?W?WBW????????WW???B???B???BB?????WW?????????BB?????B??B??W????B?????B???BW?...

output:

YES
WWWWWWWWWBBWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWBBBWWWWWWWWWWBWWWWWWWWWWWWWWWWWWBWBWWWWWWBWWWWWWBWWWWWW
WWWWWWBWWWWWWWWWBWWWWWWBWBWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBWWW
BBWBWWWWWWWWWWBWWWWWWWWWWWWWWBWWWBWWWBBWWWWWWWWWWWWWWWWBBWWWWWBWWBWWWWWWWBWWWWWBWWWBWWWWWWWWWW...

result:

ok ok (1000 test cases)

Test #20:

score: 0
Accepted
time: 103ms
memory: 3836kb

input:

100
100 100
????W?????W?W????B???W???B????????????????????????????????WW????W?W??????W?BB??B??????????WB????W???
?????B??W???????????????B?????????B????????????????????????W??????????????BW??????B?????????????????
???B????????????????B????????????????????B??????B??????W?BB?????????????????B??????W??...

output:

YES
WWWWWWWWWWWWWWWWWBWWWWWWBBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBBBWWBWWWWWWWWWWWBWWWWWWWW
WWWWWBWWWWWWWWWWWWWWWWWWBWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWBWWWWWWWWWWWWWWWWW
WWWBWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWBWWWWWWBWWWWWWWWBBWWWWWWWWWWWWWWWWWBWWWWWWWWWWBWWWWWW...

result:

ok ok (100 test cases)

Test #21:

score: 0
Accepted
time: 103ms
memory: 3908kb

input:

100
100 100
BBBW??W??WBWBW?B????B???BWWB?BB??BB?WWBW?W?????BBBWB?BBBB?WBBBW??WWWW????B?W?B??W?W?BB??W??W?BBB??BB
WWB??WW??B?W?WWWWWW?BWW??BW??BBBWWBB?W?W?BBWWWWBWBW??B?WB?B?BBB?W?WWWB???W??W?BB?BWWBW?WW?BW???W??WB
WBBBWW?W?BW????W??B?BBW?B??WW?BB??B?WWW????W?WW??BW??BBW?BBB?BB??WW??W???WWB??WWWW?BB?...

output:

YES
BBBWWWWWWWBWBWWBWWWWBWWWBWWBWBBWWBBWWWBWWWWWWWWBBBWBWBBBBWWBBBWWWWWWWWWWWBWWWBWWWWWWBBWWWWWWWBBBWWBB
WWBWWWWWWBBWWWWWWWWWBWWWBBWWWBBBWWBBWWWWWBBWWWWBWBWWWBWWBWBBBBBWWWWWWBWWWWWWWBBBWBWWBWWWWWBWWWWWWWWB
WBBBWWWWWBWWWWWWWWBWBBWWBWWWWWBBWWBWWWWWWWWWWWWWWBWWWBBWBBBBWBBWWWWWWWWWWWWBWWWWWWWBBWWWWBBWBW...

result:

ok ok (100 test cases)

Test #22:

score: 0
Accepted
time: 97ms
memory: 3908kb

input:

100
100 100
?WBWW?W???WWWW?WWWB?BBBBBWWWWBBWWB??B?BB?BWBBWBBBWWWBB?BW?BWBBB??BB???BWBBB?BW?WWBWWWWB??B?BWWWBWBBW
WWW?W?WWWW???BBB??????B?BWBWBB?W??B?W?WWWBWBW?W??WW?B?WBBWW?WWWW??W???BWWB?WWW?W?BBBW??WBBWBW??WW?B?
??BWW?WBBBWBWW?W?WWWW?B???BBBBWBBBBW??W?WWW?BW?BWBWWBBWBBB?BBWBBBB?WBBBBWW?WWWWW??W?WB...

output:

YES
WWBWWWWWWWWWWWWWWWBWBBBBBWWWWBBWWBWWBWBBWBWBBWBBBWWWBBWBWWBWBBBWWBBWWWBWBBBWBWWWWBWWWWBWWBWBWWWBWBBW
WWWWWWWWWWWWWBBBWWWWWWBWBWBWBBWWWBBWWWWWWBWBWWWWWWWWBWWBBWWWWWWWWWWWWWBWWBWWWWWWWBBBWWWWBBWBWWWWWWBW
WBBWWWWBBBWBWWWWWWWWWWBWBBBBBBWBBBBWWWWWWWWBBWWBWBWWBBWBBBWBBWBBBBWWBBBBWWWWWWWWWWWWWBWWWWWBWW...

result:

ok ok (100 test cases)

Test #23:

score: 0
Accepted
time: 21ms
memory: 3856kb

input:

100
100 100
WWWWBBBWWBBBW?BBW?BBB?WWBBB?WWBBBWBBBWBBWBWBWWWWWBBWWWBWBBWWBWBW?BBWBBWBW?WWWBBWWWWWWWW?BW?BBWBBW??B
BWWWWBBB?WBBWW?WWB?BBWBB?BBBBBBBWB?WWBWW?WWBBWWWWBBBWBWBWWWBWBWBWWBWWWBBB?B??WBWWWBBBBBBWBBBBW?WB?WB
B?WBWBBBBWWWWBBWWWB?BBWB??WWBWBB?WBBBBBWWBWW?WBBBBBBBWWBWWWWW?BBWBBB?BBB?WBWBB?BBB??BB...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok ok (100 test cases)

Test #24:

score: 0
Accepted
time: 30ms
memory: 3852kb

input:

100
100 100
BBBWW?BWWW?WB?W?WW?????B?WBWWWBWWWBW?BWW?B???B?WWW??BB???BWB??BBB??WWW?W?W??BBBWBWB?W?BBBB??W??B?WWW
?B?WW????W?WB?W??B???WWW?W?B?WBBBWBWB?W?WWWBW?BBWWBBBW?B?W?WB?WWB?BWWWWW??WBWB?B?WBW??WB?WBWWW???B?B
??BWW?WWBWWB??WB?BW?WWBWWW??W????W???W?WB?BWBB?BWBBB?BW?W?WWWWBWBW?WBWBWBW??BBWWW?WBB?...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO

result:

ok ok (100 test cases)

Test #25:

score: 0
Accepted
time: 27ms
memory: 4000kb

input:

100
100 100
?BB???B?BBB?WB??B?B??B?BW??BB?BWWW?B?B???WB??B??BB?BBBB?BB????BWB?B??BBBBBBBBBW??BB?BB?B??BBW?B??B?W
?BBB?B?B?BBBBBB?B????B?BB????B??B??BB??BBB?W?BB??BBBBBBB??B??BBB???B?????B?WBB?B??BBBBB?BBBB?BB?B???
BBBW??B??B????BB??BB????B??B??BBBB?BB?B??B???WBB??B?BWB?B?B?B?B?BB?BBB?BWB?????BW???BB...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
WBWBBBWBBBBBWBBWWWBWWWWWWBBBWWWBWBWBBBBWBWWBBBWBWBWBWBBBBBBWWWWWBBBWBWWWWWBWWBBWBBBBWWBBBBWBBWBBBWWB
BBWBBBBBWWWWWBBBBBBWBWBBWBWBWWWBBBWWWBBWBWBBBWWBBBBBWBWBBBBWBWWBBBBWWWWWBWWWWBWWBWWBBBBWWBBBBBBWBWWB
BWWBWBB...

result:

ok ok (100 test cases)

Test #26:

score: 0
Accepted
time: 36ms
memory: 3880kb

input:

100
100 100
??B?????????WBWB?B??B????????WB?WW????WBW???W??????????B???BWW?????W??W?B?????W???B????WB???B?W?W???
W?BW??W??W???WWB???BWBW?WB??WWWB?B?WB??B???BWW??B??B????????B??BB??B?????B??W?W??W?B???W?????B????BW
??W????B???BB????????????WB????WB???B??BBB????B???WWB?????WW??B????BBW??W?W???BW?W?W??...

output:

NO
NO
YES
WBWWWBBWWBWBWWWWBBWWWWWWWWWWWWWWBBBWBWWWWWBWBWBBBBWWWWBBWWWWBWWWWWWWWWWWWWBBWBWWWWWWBWWWWWWWWBWWWBWW
WBBBWBBBWWWWWWWWBBBWWWWWWWBBWBBWWWWWBBWWWWWWWWBBWWWWWWBBBWWWWWWWBWWWWWWWWWWBWBBWBBBWBBWWWWWWBBWWBBWW
WWBWWBWBBBBWWBWWBWWWBWWWWWBBWWWWWWWWWWWBWWWBBWWBWWBWWBBBWWWWWWBWWWWBBWWWBWBBWWBWWBWWWBBB...

result:

ok ok (100 test cases)

Test #27:

score: 0
Accepted
time: 56ms
memory: 3944kb

input:

100
100 100
?????W???????????????????B????W????W????????????WB??W?????????????W?????????????B??????????W?BW?W???
W?WW????BB????????????????W????????????????????????W????????????????W?W???????????????W????W????????
????????????W??????????WW????????????????????????W??????W???????B?????????B????W??????...

output:

YES
WWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWBWWWWWW
WWWWWWWWBBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWBWWWWWWWWWWWBWWWWWWW...

result:

ok ok (100 test cases)