QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#272903#5070. Check Pattern is BadliangbowenAC ✓133ms3548kbC++143.1kb2023-12-02 19:55:462023-12-02 19:55:47

Judging History

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

  • [2023-12-02 19:55:47]
  • 评测
  • 测评结果:AC
  • 用时:133ms
  • 内存:3548kb
  • [2023-12-02 19:55:46]
  • 提交

answer

#include <iostream>
#include <cstdio>
#include <queue>
#define mk make_pair
using namespace std;
int n, m; char a[105][105];
bool valid(int x, int y) {return 1 <= x && x <= n && 1 <= y && y <= m;}
bool walid(int x, int y) {return 1 <= x && x < n && 1 <= y && y < m;}
bool check(int x, int y)
{
	if (!walid(x, y)) return false;
	if (a[x][y] == 'B' && a[x + 1][y] == 'W' && a[x][y + 1] == 'W' && a[x + 1][y + 1] == 'B') return false;
	if (a[x][y] == 'W' && a[x + 1][y] == 'B' && a[x][y + 1] == 'B' && a[x + 1][y + 1] == 'W') return false;
	return true;
}
queue <pair <int, int>> q;
pair <int, int> cover(int x, int y) //把必定能确定的点填掉
{
	if (!walid(x, y)) return {0, 0};
	int yiw = 0, X = -1, Y = -1;
	for (auto dx : {x, x + 1}) for (auto dy : {y, y + 1})
		if (valid(dx, dy) && a[dx][dy] == '?')
			yiw++, X = dx, Y = dy;
	if (yiw != 1) return (yiw == 0 && !check(x, y)) ? mk(-1, -1) : mk(0, 0);

	a[X][Y] = 'B'; if (!check(x, y)) return a[X][Y] = 'W', mk(X, Y);
	a[X][Y] = 'W'; if (!check(x, y)) return a[X][Y] = 'B', mk(X, Y);
	return a[X][Y] = '?', mk(0, 0);
	// bool black = false, white = false;
	// a[X][Y] = 'B'; if (check(x, y)) black = true;
	// a[X][Y] = 'W'; if (check(x, y)) white = true;

	// if (black && white) return a[X][Y] = '?', mk(0, 0);
	// else if (!black && !white) return mk(-1, -1);
	// else if (black) return a[X][Y] = 'B', mk(X, Y);
	// else if (white) return a[Y][Y] = 'W', mk(X, Y);
	// return mk(-1, -1);
}
void EMPTY() {while (!q.empty()) q.pop();}
bool cover_all()
{
	while (!q.empty())
	{
		auto [x, y] = q.front(); q.pop();
		for (auto dx : {x - 1, x, x + 1}) for (auto dy : {y - 1, y, y + 1})
			if (walid(dx, dy))
			{
				auto [t1, t2] = cover(dx, dy);
				if (t1 == -1 && t2 == -1) return false;
				else if (t1 && t2) q.push({t1, t2});
			}
	}
	return true;
}
bool end_check()
{
	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= m; j++)
			if (a[i][j] == '?') return false;
	for (int i = 1; i < n; i++)
		for (int j = 1; j < m; j++)
			if (!check(i, j)) return false;
	return true;
}
inline int rnd(int l = 114514, int r = 1919810) {static int seed = 2333; seed = (((seed * 666666ll + 20050818) % 998244353) ^ 1000000007) % 1004535809; return seed % (r - l + 1) + l;}
void solve()
{
	cin >> n >> m;
	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= m; j++)
			cin >> a[i][j];
	EMPTY();
	for (int i = 1; i < n; i++)
		for (int j = 1; j < m; j++)
		{
			auto [t1, t2] = cover(i, j);
			if (t1 == -1 && t2 == -1) return cout << "NO\n", void();
			else if (t1 && t2) q.push({t1, t2});
		}
	if (!cover_all()) return cout << "NO\n", void();
	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= m; j++)
			if (a[i][j] == '?')
			{
				a[i][j] = (rnd() % 2 ? 'B' : 'W'), q.push({i, j});
				if (!cover_all()) return cout << "NO\n", void();
			}
	if (!end_check()) return cout << "NO\n", void();
	cout << "YES\n";
	for (int i = 1; i <= n; i++, cout << '\n')
		for (int j = 1; j <= m; j++) cout << a[i][j];
}
int main()
{
	ios::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
	int T;
	cin >> T;
	while (T--) solve();
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

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

output:

YES
BB
BW
NO
YES
BWW
WWW
WWB

result:

ok ok (3 test cases)

Test #2:

score: 0
Accepted
time: 29ms
memory: 3488kb

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
BW
BB
BB
WB
BB
YES
WW
WB
BB
BW
WW
BW
NO
NO
YES
B
W
B
B
B
W
W
W
B
B
YES
BBWW
WBWB
WWWW
WBWW
WWWW
WWWW
WBWB
WWWW
WBBW
BBBW
YES
WBW
WBW
BBB
WWB
WWW
WWW
WBB
WWB
YES
W
B
B
B
YES
BBWB
WBWB
YES
BBBBBB
BBWBWB
YES
WBWBW
YES
BWWWWW
WWBWWB
BBBWWB
WWWWWW
YES
W
YES
BWB
BBB
WBW
WBB
WWB
WBB
BBW
WBB...

result:

ok ok (10000 test cases)

Test #3:

score: 0
Accepted
time: 25ms
memory: 3480kb

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
B
B
B
W
W
W
B
B
W
YES
WBBB
BBBB
WWWB
WWWB
WWWW
BBWB
WWWW
WBWB
BBWB
YES
BW
BB
BB
YES
WWBBWWB
BWWWWWW
NO
NO
YES
WWB
BWW
BBB
BWW
WWW
YES
BWBWWWBBB
BWBWBWBBB
WWBBBBBWW
WWWWWWWWW
WWWBWWWWW
WWWWWWBWB
WWWWWBBWB
YES
WBWWBWW
WBBWWWB
WWBWWWW
BWWWWBW
BBBBWWW
WBBBWBB
WWWWWWW
WWWWWWB
BWWBBWW
YES
WB
BB
B...

result:

ok ok (10000 test cases)

Test #4:

score: 0
Accepted
time: 29ms
memory: 3436kb

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
BBBBBBW
WWWBBBW
WBBBBBB
WWBBBBB
BBBBBBB
BBWBWWB
BBWBBBB
YES
WWWWWW
WBBWWB
WWWWWB
BWWBWW
WWBBWW
WBBBWW
WBWWWW
WWWWBW
WWWBBW
BWBBWW
YES
BBBWWB
BWBBBB
YES
BBBWBBWB
YES
WB
WB
BB
BB
WW
YES
WWWWW
WWWWW
BWWWW
WWWWW
WWWWW
BWBBB
WWWWB
NO
YES
WWWW
WWWW
WBBB
WWBW
WWWW
BWBW
WWBB
WBBB
WWWW
BBWB
YES
BBBBBB
BW...

result:

ok ok (10000 test cases)

Test #5:

score: 0
Accepted
time: 29ms
memory: 3420kb

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
B
YES
WWWBBBWWB
WWBBBBWWW
BBBWWBWBB
WWWWWWWWB
WWWBBBWWW
BBWWWWWWW
BBWWWWWWB
YES
WWBBBBW
BWBWWBW
BBBBBBW
YES
BBBWWB
YES
W
W
W
B
B
W
W
NO
NO
YES
WBBBBBB
NO
YES
WBW
WBB
BBB
BWB
BWB
BBB
BBB
NO
YES
BBB
BWB
WWB
BBB
BBW
WBW
WBB
BBB
BBB
BWB
YES
WW
BB
BB
BW
BB
BB
BB
NO
YES
BB
BB
BB
BB
BB
BB
BB
WB
NO
YES
...

result:

ok ok (10000 test cases)

Test #6:

score: 0
Accepted
time: 26ms
memory: 3452kb

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
B
B
W
W
B
W
B
YES
WBWWWBWBWB
YES
BBWBWWBB
BBWWWBBW
BWWWBBBW
BBWWBBBB
WBWBBBBB
YES
WB
BB
WB
BB
WW
WB
YES
WWBBBWWBWB
YES
BWB
WWW
BBB
WWW
NO
YES
BBBBBB
NO
YES
B
B
B
B
W
B
B
B
B
YES
WWWWBWBBB
WWBBBBBWW
WWWWWWBWW
WBWWWWWWW
WWWWWBWWW
WWWWWWWWW
WWWWWWBWW
WWWWWWWWB
YES
WBWW
WWWW
WWWW
BBWB
WWWB
WWWB
...

result:

ok ok (10000 test cases)

Test #7:

score: 0
Accepted
time: 78ms
memory: 3532kb

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
BBWBWWWWWB
WWWBWBBBWB
BWWWWWWBWW
WWWWWWWWWW
BWBWWWBWWB
BWWWBWWWWW
BWBBBWWWBW
WWWWBWBWBB
BWBWBWBWWB
BWWWBBBBWW
NO
YES
BBBBWBWWWB
WWWBWBBWWB
BWBBWWBWWW
BBBBWWBWWW
BBWBBWBBWW
BBWBBWWWWB
BBWBWWBWBB
BWWBWWBWBB
WWBBBBBWBW
BWBWWWBBBB
YES
BBBBBBWBBB
BBBWWBBBBB
WBBBBBBBBB
BBBWBBBBBB
BBBBBWBBBB
WBBB...

result:

ok ok (10000 test cases)

Test #8:

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

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
BBBBBWBBBB
BWWWWWWBBW
BBBWBBBBBB
BBWWWBBBBW
WWWBBBWBBB
WBWBBBWWWW
BBBBBBBBBW
BBWBWWBBWW
WWWBBBBBBB
BWBBBBBBBB
NO
YES
BBWWWBBBBB
BWWBWBWBWW
WWWWWBWBWW
BWBBWWWWWB
WWBBWBBBWW
BWWBWBWWWW
WWWWWWWWWW
WWWWWBWWWW
WBWWWBBWBW
WBBWWWWWBB
YES
WWWWWWWWWW
WWWWBWBWWW
WWBWWWWWWB
WWBWBWWWWW
WWWWBBWBWW
WWWWWBBBWB...

result:

ok ok (10000 test cases)

Test #9:

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

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
WWWBBWBBBBBBBWWBWBBWWWBBWBBBWWBWBBWWBBBBBBBBBBBBBBBWBBBWBWWWWBBBBBWWWWBBBWWWBBBWBWBBWBBBWWBBBBWWWWBB
YES
WWBWWWBBBBBBBBWBWBBBBWWBBBBBWBBWBBWBBBWBBBBBBWBBWBBWWWWWWWBBBBWWWBWWBBWWBWBBBWBBWWWWWBWWBWBBBBBBBBWB
YES
WBWWWWBBBBBBBBBWBWWBBWWWBBBBWBBBBBWWWBBBBBWWBBBBWBBBBBWBWBBWBBBWWBWBBBBBBBBWWWWBWBBWWB...

result:

ok ok (10000 test cases)

Test #10:

score: 0
Accepted
time: 48ms
memory: 3444kb

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
B
B
B
B
B
B
B
B
B
W
B
B
B
B
W
B
W
B
B
W
W
B
W
B
B
W
B
W
W
B
W
B
B
B
B
B
B
W
W
B
B
B
B
B
W
W
W
B
B
W
B
B
B
B
W
W
W
W
B
W
B
W
B
W
B
B
B
B
B
B
W
B
B
W
B
B
W
B
B
W
B
B
B
B
B
B
B
B
W
W
B
B
B
B
B
B
W
YES
W
W
W
W
B
W
W
W
W
W
B
W
W
W
B
B
B
W
B
B
W
W
W
W
B
B
B
B
W
W
B
W
W
W
W
W
W
W
W
W
B
W
B
W
W
B
...

result:

ok ok (10000 test cases)

Test #11:

score: 0
Accepted
time: 31ms
memory: 3548kb

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
BBWBWWWBBW
WBWWWWWWWW
WWWBWBWBWW
WWWWWWWBBB
BWWWBWWWWB
WWWWWWWWWW
WWWWBWWWWW
WBWWWWWWWW
WWWBBWWWBW
BBWWBBWWBB
WWWBBWWWBB
BBWWBWBWWW
BBBWBWBBBW
BWWWBWWBWW
WWWWBWWWWB
WWWBBWWWWW
WWWWWWWWWW
WWWWWWWWBB
WWWBWWWWWW
WWWWWWWWBW
WWBBWWWWWW
WWBBWWWBBW
WBBBWBWBWW
WWWWWWWWWB
WBBWWWWBWW
...

result:

ok ok (1000 test cases)

Test #12:

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

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
BBBBWWWBWBBWBBBBWWBWWWWWBBBBBWBBBBBWBBWWBWWBBBBBWWWWBWBWBBWBBBBBWWWWWWWWBWWWWBWWBBWBWWWBBWBWWWWBBWBW
BBBBWWWBBBBBBBBWWBBBBWWWBWBWBBBWWWWWBBBWWWWBBBWBWWBBBBBWWWWBWBBBBBWBWWBWBWWBWWWWBWWWWWWBBWWWBWWWWWBW
WWWWWWBBWWWWWWWWBBBWBWWWWWBWWWWWWWWBBWWWWBWBWWWWWWWWBBBBWWWBWWWWWWWBWBBWBWWBBWBWBB...

result:

ok ok (1000 test cases)

Test #13:

score: 0
Accepted
time: 11ms
memory: 3416kb

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
BBBBWWWBBBWBBBBBBBBWWBWWWWBBWBBBBBBWBBBWWBBWWBBBBBBBBWBW...

result:

ok ok (100 test cases)

Test #14:

score: 0
Accepted
time: 10ms
memory: 3428kb

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
BBBBBWWWBBBWBBBBBBBWWBBWBWWWBWBBBBWBBBBBWBBBWBBBWWWBBWWBBBBBBBWBWBBBBBWBBBBWWBBBWBBWWBWBBWBWBBBWBWWW
WWBBWWBWWWBBBBBBBBBBWBWWWWBBBBBBBWWBBBWBBBBWWWBBBBBBBBBBWBBBBBBBBBWBBBBBBBBBWBBBWWBBWWWBBBBWWBWWBBBB
WBBWWWBBBBBBWBBBWBWBWBBBBWWBBBBWBWBBWBBBBBBWBBBWWBBBWWB...

result:

ok ok (100 test cases)

Test #15:

score: 0
Accepted
time: 11ms
memory: 3508kb

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
BBBWWWBWBBBWBBWBWWBWWWWBBWBBBBBWBBWWBWWBBBBBBWBWBBBBBBBWWWWWWWWBWWWWWWBBWWWWBBWBWWBBBWWBBBWWWBBBBBBW
BBWWBWBBBBWWBBWWWWWWBBBBWWWWBBBWBWWWBBBBWWWBW...

result:

ok ok (100 test cases)

Test #16:

score: 0
Accepted
time: 122ms
memory: 3504kb

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
BBBWWWBWBB
BWBWBBBWWB
WWWWWWBBBB
WBBBBBBWWB
BBWWBWBWBB
BBBBBBBWBW
BBBBBBBBBW
WWWWWWWWBW
WWWWWBBWWW
WWBBWBWWWB
YES
BBWWWWWBBB
BWWBBWWWBB
WWBBBBBWBW
WWBWWBWWBB
BBBBBBBWBW
BBBBWBBWBW
BBWBWBBBBB
WBBBBBBBWW
BBWWWWBBBW
WBBBBWBBWW
YES
BBBWBBWWWW
BBBBBWWBBB
BBWWBBWBWB
WBWWBWWBBB
BBWBBBBBBW
BBWBWBWWBB
BW...

result:

ok ok (10000 test cases)

Test #17:

score: 0
Accepted
time: 120ms
memory: 3448kb

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
WBWWWBBWWW
WWWBBBBWWB
BBBBWBBBWW
WBBBBBWBWW
WWBBBBWWWB
BWBBWBBWBB
BBBWWBWWWB
WBWWBBWWWW
BBWWBBBWBB
YES
BBWWBWWWWB
BBWBBWWWBB
BBBBWWWWWB
WWWBWBWBWW
WWBBWBBBWB
BWWBWWWBBB
WWWWWBBBWW
BBBBBBBBWB
WBWBWWWWWB
WBBBWWWBBB
YES
BBBWBWBWWW
BBBBBBBBWW
BBBBBBBWWB
BBBBBWBBBB
BWBBWWWWBB
WWWBBWWWBW
BW...

result:

ok ok (10000 test cases)

Test #18:

score: 0
Accepted
time: 125ms
memory: 3504kb

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
WBBBWWBBWW
WWWBBWWWWW
WBBBBBWWWB
WBBBBBBWWB
WWWBBWWWWW
WWWWWWWWWB
BWBWBBWBBB
BBBWWWWWBB
WBBWBWBWWW
WWBBBWBBBB
BWBBBBBWBW
WWBBWBBWBW
BBBBWWWWBB
WBWBBBWWWW
WBBBWBBWBB
WWWBWBWWWB
BBWBBBWBBB
WWWBWWWBBW
BWBBBBWBWW
BWBBWBWBWW
BBBBWWWWWW
BBWBBBWWBW
BBWWWBBWWW
WBBWWBWWBW
WBBBBBBBBW
WWWBWWBWBW
WWWWWWBBBW...

result:

ok ok (1000 test cases)

Test #19:

score: 0
Accepted
time: 118ms
memory: 3444kb

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
BBBWWWBWBBBWBBBBBWBWBWWWWWWWWWWBBWBBBWWBBWWBWBBBBWWBWWBBWBBBWBBWWBWWBWBBBBBBWBWBWWWWWWBWBWWWWBWWBBWW
WWBBWBBWWWWWBWBBBWBBBBWBWBWWWWBBBBBBBBWBBWWBBBWBWWWWWBBBWWWWWWWWBBBBBWWWBBBWWWWBWWWWWBBWBBWWWWWWBWWB
BBBBWBBWWWBWBWBWBWBWWBWBWWWWWBBBWBWBWBBBWWWBWWWBBWWWBBWBBWWWBWBWWBWWWWWWBBBWBWWBWBWBWWWWWWWWWB...

result:

ok ok (1000 test cases)

Test #20:

score: 0
Accepted
time: 133ms
memory: 3428kb

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
BBBWWWWBWBWBWBBBBBWWBWWWWBWBBWBBBBBWBBWWBWWBBBBBBWBWBBBBBBWWBWWWWWWWWWWBWWBBBWWBWWWBBWWWWBWBBWBWWWBB
BWBBBBWWWWWBBBBBBBWBBBBWBBBBWWBBWWBWWBBBBWWWBBBWBWWWBBBWWWWWBWBBBBBWBWWBWBBWWWWBWWBBBWWWBBBBBWWWWBBW
WWWBWBWWWWWWWBBWBWWWBWBWWWWWWWWBWWWWBBWBBBWWWWBBBBWWWBWWWBBBBBBBWWBBBWBBWBBWBWBBBBBWWWBBBWBBBW...

result:

ok ok (100 test cases)

Test #21:

score: 0
Accepted
time: 120ms
memory: 3420kb

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
BBBWBBWBWWBWBWWBWBWBBBBBBWWBBBBBWBBWWWBWBWWWWWWBBBWBBBBBBBWBBBWWBWWWWBBBBBWWBBBWWWWBBBWWWBBWBBBBBBBB
WWBBBWWWWBBWBWWWWWWWBWWBBBWBBBBBWWBBBWBWBBBWWWWBWBWBBBWWBBBBBBBWWWWWWBWWWWWWWWBBWBWWBWWWWWBWWWBWWWWB
WBBBWWWWWBWWWWWWBBBWBBWWBWWWWWBBBBBWWWWWBWWWBWWBBBWWWBBWBBBBBBBBWWWWWWWWBWWBBWWWWWWBBBWBWBBBBW...

result:

ok ok (100 test cases)

Test #22:

score: 0
Accepted
time: 123ms
memory: 3500kb

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
BWBWWBWBWWWWWWWWWWBBBBBBBWWWWBBWWBWBBBBBBBWBBWBBBWWWBBBBWWBWBBBBBBBWWBBWBBBWBWWWWBWWWWBWWBBBWWWBWBBW
WWWWWBWWWWWWWBBBBBBBBBBWBWBWBBWWBBBBWBWWWBWBWWWWWWWWBBWBBWWWWWWWWWWWBBBWWBBWWWBWBBBBWBBWBBWBWBWWWWBB
WBBWWBWBBBWBWWBWBWWWWWBBBBBBBBWBBBBWWBWBWWWBBWBBWBWWBBWBBBWBBWBBBBWWBBBBWWWWWWWWWWWWWBWWWWWBWB...

result:

ok ok (100 test cases)

Test #23:

score: 0
Accepted
time: 7ms
memory: 3468kb

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: 7ms
memory: 3496kb

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: 9ms
memory: 3380kb

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
BBBBBBBWBBBBWBBWBWBBBBBBBBBBWWBBWBWBBBBWBWBBBBWBBBBBBBBBBBBWBBWWBBBBBWWBBBBBBBBWBBBBWBBBBBBBBBBBBBWB
BBWBBWBBBWWWWBWWBWBWBBBBWBWBWWWBBBWBBBBWBWBBBWWBBBBBWBBBBBBWBBWBBBBWBBBBBWBBBBWWBWWBBBBBBBBBBBBBBBWB
BBBBBBB...

result:

ok ok (100 test cases)

Test #26:

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

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
BBBBWBBWWBBBWBWBBBBBBBWWBWWWWWBBBBBWBBBBBBBWBBBBBBWWBWWBBBBBBBBWBWBBBBBBBWBBWBWWWWWWBBWWWWWWBBBWWBWW
BBWBBBBBWWBBWBWBBBBBWWWWBBBBBBBBBBWWBBBBWBWWBBWBWWWWBBBBBBWWWBBWBBBWBWWWBBBBBBBWBBBWWBBWBBBBBBBWBBBW
WBBBBBWBBWBBWBWBBWWBBBWWWBBBWBBWWWWBBWWBWWWBBWWBBWBWWBBBWWWWWBBBBWBBBBWWBWBBWWBWWBWWWWBB...

result:

ok ok (100 test cases)

Test #27:

score: 0
Accepted
time: 117ms
memory: 3412kb

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
BBBWWWWBWBBBBBBWWBWWWWBBWBBBBBWBWBBWWWBWWBBBBBBWWBBWWBBBBBBBWWWWWWWWWBWWWWWWBBWWBWWBBWBWWBBWBBWWWBBB
WWWWWWBBBBBBBBBWBBBBWBBWWBWBWWWWWWBBBWWWWBBBWBWWWBBWBBWWWBWBBBBBWBWWWBWWBWWBBWWWBWWWBWWWBBBWWWWWBBWW
WWBWWWWWWWBBWWBWWWBWWWWWWWWWWWWBWWWBWWBWWWWBBBBWWWWWWBWWWBBBBWWBBBBBWBWBBBBBWWWWBBBWBWBBBBBBBB...

result:

ok ok (100 test cases)