QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#642066#5071. Check Pattern is GoodsyxsyxTL 370ms8328kbC++143.6kb2024-10-15 09:32:042024-10-15 09:32:04

Judging History

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

  • [2024-10-15 09:32:04]
  • 评测
  • 测评结果:TL
  • 用时:370ms
  • 内存:8328kb
  • [2024-10-15 09:32:04]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int N=105,M=100005;
const int inf=0x3f3f3f3f;
int dx[]={1,1,1,0,0};
int dy[]={1,0,-1,-1,0};
int T;
int n,m;
char a[N][N];
int vid[N][N][2];
int typ[N][N],res[N][N];
void upd(int x,int y)
{
	if(a[x][y]!='B'&&a[x+1][y+1]!='B'&&a[x+1][y]!='W'&&a[x][y+1]!='W') typ[x][y]|=1;
	if(a[x][y]!='W'&&a[x+1][y+1]!='W'&&a[x+1][y]!='B'&&a[x][y+1]!='B') typ[x][y]|=2;
	if(a[x][y]!='?'&&(a[x+1][y]==a[x][y]||a[x][y+1]==a[x][y])) typ[x][y]=0;
	if(a[x+1][y+1]!='?'&&(a[x+1][y]==a[x+1][y+1]||a[x][y+1]==a[x+1][y+1])) typ[x][y]=0;
}
void update(int x,int y,int t)
{
	if(t==0) return;
	if((x+y)%2==1) t=3-t;
//	printf("%d %d %d\n",x,y,t);
	if(t==1) a[x][y]=a[x+1][y+1]='W',a[x+1][y]=a[x][y+1]='B';
	if(t==2) a[x][y]=a[x+1][y+1]='B',a[x+1][y]=a[x][y+1]='W';
}
int cnt,tp[M];
void init()
{
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
		{
			typ[i][j]=0;
			vid[i][j][0]=vid[i][j][1]=0;
			res[i][j]=0;
		}
	cnt=0;
}
int s,t;
int tot,h[M];
struct E{int v,c,nxt;}e[M*2];
void add(int u,int v,int c)
{
	e[++tot].v=v;
	e[tot].c=c;
	e[tot].nxt=h[u];
	h[u]=tot;
}
void addedge(int u,int v,int c)
{
//	printf("%d %d %d\n",u,v,c);
	add(u,v,c);
	add(v,u,0);
}
int dep[M];
queue <int> q;
bool bfs()
{
	for(int i=1;i<=t;i++) dep[i]=-1;
	q.push(s);
	dep[s]=0;
	while(!q.empty())
	{
		int x=q.front();q.pop();
		for(int i=h[x];i!=-1;i=e[i].nxt)
		{
			int v=e[i].v,c=e[i].c;
			if(dep[v]!=-1||!c) continue;
			dep[v]=dep[x]+1;
			q.push(v);
		}
	}
	return dep[t]!=-1;
}
int cur[M];
int dfs(int x,int flow)
{
	if(x==t) return flow;
	int res=0;
	for(int &i=cur[x];i!=-1;i=e[i].nxt)
	{
		int v=e[i].v,c=e[i].c;
		if(dep[v]!=dep[x]+1||!c) continue;
		int tmp=dfs(v,min(c,flow));
		flow-=tmp;res+=tmp;
		e[i].c-=tmp,e[i^1].c+=tmp;
		if(!flow) break;
	}
	if(flow) dep[x]=-1;
	return res;
}
int dinic()
{
	int ans=0;
	while(bfs())
	{
		for(int i=1;i<=t;i++) cur[i]=h[i];
		ans+=dfs(s,inf);
	}
//	printf("%d\n",ans);
	return ans;
}
int vis[M];
void dfs(int x)
{
	if(vis[x]) return;
	vis[x]=1;
	for(int i=h[x];i!=-1;i=e[i].nxt)
	{
		int v=e[i].v,c=e[i].c;
		if(!c) continue;
		dfs(v);
	}
}
void init2()
{
	tot=1;
	s=cnt+1,t=cnt+2;
	for(int i=1;i<=t;i++)
	{
		h[i]=-1;
		vis[i]=0;
	}
}
int main()
{
//	freopen("tmp.in","r",stdin);
//	freopen("tmp.out","w",stdout);
	scanf("%d",&T);
	while(T--)
	{
		scanf("%d%d",&n,&m);
		for(int i=1;i<=n;i++)
			for(int j=1;j<=m;j++) scanf(" %c",&a[i][j]);
		init();
		for(int i=1;i<n;i++)
			for(int j=1;j<m;j++)
			{
				upd(i,j);
				if(typ[i][j]&1) vid[i][j][(0+i+j)%2]=++cnt,tp[cnt]=(0+i+j)%2;
				if(typ[i][j]&2) vid[i][j][(1+i+j)%2]=++cnt,tp[cnt]=(1+i+j)%2;
			}
		init2();
		for(int i=1;i<n;i++)
			for(int j=1;j<m;j++)
				for(int d=0;d<5;d++)
				{
					int nx=i+dx[d],ny=j+dy[d];
					if(nx<1||ny<1||nx>n||ny>m) continue;
					if(vid[i][j][0]&&vid[nx][ny][1]) addedge(vid[i][j][0],vid[nx][ny][1],inf);
					if(vid[i][j][1]&&vid[nx][ny][0]) addedge(vid[nx][ny][0],vid[i][j][1],inf);
				}
		for(int i=1;i<=cnt;i++)
		{
			if(tp[i]==0) addedge(s,i,1);
			if(tp[i]==1) addedge(i,t,1);
		}
		printf("%d\n",cnt-dinic());
		dfs(s);
		for(int i=1;i<n;i++)
			for(int j=1;j<m;j++)
			{
				if(vid[i][j][0]&&vis[vid[i][j][0]]) res[i][j]=1;
				if(vid[i][j][1]&&!vis[vid[i][j][1]]) res[i][j]=2;
			}
		for(int i=1;i<n;i++)
			for(int j=1;j<m;j++) update(i,j,res[i][j]);
		for(int i=1;i<=n;i++)
			for(int j=1;j<=m;j++) if(a[i][j]=='?') a[i][j]='W';
		for(int i=1;i<=n;i++){
			for(int j=1;j<=m;j++) printf("%c",a[i][j]);printf("\n");}
	}
}

详细

Test #1:

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

input:

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

output:

1
BW
WB
1
BWW
WBB
WBW
4
BWB
WBW
BWB

result:

ok ok (3 test cases)

Test #2:

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

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:

3
BB
BW
WW
WW
BW
WB
BW
WB
BB
2
BW
WB
BW
BW
WW
WW
9
WBBBWWW
WBWBWWW
BWBBWWB
WBWWBWW
BBWBBWB
WWBBWWW
BWBWBWB
WWWWBBW
BBWBBWW
BWWWWBB
6
BWWBWWB
WBBWWWB
BWWBBBW
BBBWBBB
0
B
W
W
B
B
W
W
W
B
W
15
BWWW
WBWW
WWWB
WBBW
BWWB
BWBW
WBWB
BWBW
WBWW
BWBW
8
WBW
WWB
WBW
BWB
WBW
WBW
BWB
WWW
0
W
B
W
W
1
WBWB
WWBB
3
BW...

result:

ok ok (10000 test cases)

Test #3:

score: 0
Accepted
time: 42ms
memory: 4124kb

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:

21
WBWWBW
WWBBWB
WWBWBW
BBWBWB
WWBWWB
BBWBBW
BWBWWB
WBBWBW
BWWBBW
0
W
W
W
W
W
W
W
W
B
W
15
WBWB
BWBW
WBWB
BWBB
WBWW
WBWB
WWBW
WBWB
BWWW
1
BW
WB
BB
4
BWBBWWB
WBWWBBW
20
WBWBWWWWW
BWBWBBWWW
WBWBBWBWW
WWBWWBWWW
WBBWBWBWW
BWBBWWWWW
WBWBWBWWW
WWWWBWWWW
BWWWWWWWW
28
WWBBWWWWWB
WBWBWBWBBW
BWBWBWBWBW
WBWWBW...

result:

ok ok (10000 test cases)

Test #4:

score: 0
Accepted
time: 44ms
memory: 5884kb

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:

15
WBWBBBW
BWBWBBW
WBBBBWB
WWWBWBW
WBBWBBB
BBWBWWB
BWBWBBW
13
WWWWWB
WBWWBW
BWWWWB
WWWBWW
WWBWWW
WBWBWB
WBWWBW
WWBBWW
WWWWBW
WWWBWB
4
WBWBWW
BWBWBB
0
WWBWBWWW
1
WB
WB
BW
BB
WW
12
WBBWB
BWWBW
WBBWB
WWWWB
WBWBW
BWBBW
WBWWB
7
BBWBW
BWBWW
WWWBB
WBBWB
BWBWW
BBWBB
WWWWB
BBWWB
9
WWWW
WBWB
WWBW
WBWB
BWWB
BW...

result:

ok ok (10000 test cases)

Test #5:

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

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:

0
W
18
WBWBWWBWB
BWBWBBWBW
BBBBWBWBW
WWWWBWWWB
WWBBWBWBW
WBWWWBWWW
BWWWBWBWB
5
WBBBBBW
BWBWWWB
BBWBWBW
0
WBWWWB
0
W
W
W
B
W
W
W
23
WWWBWWBW
WWWWBBWB
BBWBWWWW
WWBWBWBW
BBWBWBWB
BWBWBWWW
WWBWWBWB
BBWBBWBW
19
WWWBWBBW
WBWWBWBW
WWBWWWBW
WWWWBWWB
WBWBWBBW
BWBBWBWB
WBWWBWWB
WWBWWBWW
WBWBWWWW
WWWWBBWB
0
WB...

result:

ok ok (10000 test cases)

Test #6:

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

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:

0
W
B
W
B
W
W
W
W
B
0
WWWWWWWBWB
10
BWWWBWBW
WBWWWBWW
BWBWBWBW
BBWBBBBB
WBBWBBBW
2
WB
BW
WB
WB
WW
WW
0
WWWWBWWBWW
6
BWB
WBW
BWB
WBW
26
WWWBBWWBWB
WWWBWBBWBW
BWWBWWWBWW
WBWBWBBBBB
BWBBBBWBBW
WWWWWWBWBB
WWBBBWWBBB
BBWBWBWBBW
BWBWBWBWBW
WBBWWBWBWB
0
WWBWWW
4
WBBWW
BWWWW
WWWWB
WWWBW
WWBBW
WBWWB
0
B
B
B
...

result:

ok ok (10000 test cases)

Test #7:

score: 0
Accepted
time: 147ms
memory: 4136kb

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:

20
BWBWWBWWBW
WBWBWWBBWW
WBBWWWWWWW
WWBBWWWWWW
WBWWBWWWWW
BWWWWWWWBW
WBBWWWBBWB
WWWWWBWWBW
WWWWBWWBWB
WWWBWWBWWW
24
WBWWBBWWWB
BWWWWBWBBW
WBWBWWBBWB
WBWBWBWWBW
BWWBBWBWWB
WWBWBBWWWB
WBWBBWBWBW
WWBWWWWBWB
BWBWWWWBWW
WWWWWWBWWB
33
WBWWBWBWWW
BWWBWBWBWW
WBWWBWWBWW
WWBBWWBWWW
WWWBWWWWWB
WWWWBWWWBW
BWBBW...

result:

ok ok (10000 test cases)

Test #8:

score: 0
Accepted
time: 148ms
memory: 7900kb

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:

34
WBBBBWBBBW
BWWBWBWBWB
BBBWBWBBBW
WBWBWBBBWB
WWBBBWWBBB
WBWBWBBWBW
BWBWBBBBWB
WBWBWWBWBW
BWBBBBWBBB
BWBBBBBBBW
31
BWWBWWBWBW
WBBWWBBBWB
BWWBBWWBWB
BWWBWBBWBW
WWBWWWWBWB
BBWBWBWWBB
WWBBBWBBWB
BBWWBBWBWB
WBWBWBBWBW
WBBWBBWWWB
33
WBWWWBBWBB
BWWBBWWBWW
WBBWWBWBWW
BWWBBWBWBW
WWBWWBBBWW
BBWBWBWWWW
WWBWB...

result:

ok ok (10000 test cases)

Test #9:

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

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:

0
WWWWBWBWBBWBBWWBWBBWWWWBWBWBWWBWBWWWBWWBBBBBWWBBBBBWBBBWBWWWWBWBBBWWWWBBBWWWWBWWWWWWWWWBWWBWBWWWWWBW
0
WWBWWWBWBBBBWBWBWBWWWWWBWBBBWBBWWBWBWWWWBWWBBWWWWBBWWWWWWWBBBBWWWBWWBBWWWWBBBWBBWWWWWBWWBWWBBBBBBBWB
0
WWWWWWBBBWBBWBBWWWWWBWWWBWBWWWBBWWWWWWBWWBWWWWWBWWBWBWWWWWWWBBBWWBWBBBWWWBBWWWWWWWWWWWWWWBWW...

result:

ok ok (10000 test cases)

Test #10:

score: 0
Accepted
time: 79ms
memory: 3968kb

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:

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

result:

ok ok (10000 test cases)

Test #11:

score: 0
Accepted
time: 206ms
memory: 6080kb

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:

335
WWWBBWWWBW
WWWBWBWBWW
WBBWBWWWBW
WBBBWWWBWB
BWWWWWWWBW
BWWWWWWBWB
WBWBWWWWBW
WWBWBBWWWB
WWBBWWBWBW
WBWBWWWBWB
BWBWBWWWWB
WBWWWBWWBW
WBWBBWBWWW
BWWBBWWBWW
BWBWWBBWBW
WBWWWWWBWW
BWWWBWWWBW
WBWBWBBWWW
BWBWBWWWWW
WWWBWWWWBW
BWBWWWWWWB
WBWWWWWWBW
BWBWWBWWBW
WBWBBWWWWB
WWWBWWBWWW
BBBWBBWBWB
WBWBWWBWBW...

result:

ok ok (1000 test cases)

Test #12:

score: 0
Accepted
time: 202ms
memory: 5860kb

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:

330
BBWBWBWWWBWBWBWBBBWBWWWWBBBWBWBBWBWWBWBWWBWWBWBWBWBWWBWBBBWWBWBWWWBWWBWWWBWWBWBWBBWWWBBBBWWBBWBWBBWB
BWBWBWWWWBWBBBBWWWBWWBWBWBWBWWBWBWBBWWWBWBWWBBWBWBWBBWBWBWWBWBBBBWBWBWBWWWBBWBWBWBWBBBWWWBBWWBWBWWBW
WBWBBBWWBWBBBWWWWBBWBWBBBWWWBBWBWBBBWBBWBWBBWWBWBWBWBWBBWBBWWWWWBBBBWWWWBWBBBWBWWWBBBWBWWBWBWW...

result:

ok ok (1000 test cases)

Test #13:

score: 0
Accepted
time: 289ms
memory: 7248kb

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:

4352
WWWWWWBBWWWWBBBWBWWWWBWBWBWWWBWWBWBWWBWWBWBWWWWBWBWBWWBWBBWBBWBWBWWWWBWWBWWBWBWWWBWBBWWBWBWWBWWWBWWB
BBWBWBWWBWBBWBWWWBWWWWBWBWBBWWBBWBWBWWBBWWWBBBWBWWBWBBWWWWBWBWWBWBWBBWBBWBBWBWBWWWBWBWWWBWBBWWWBWBBW
WWBWBWBWWBWBBWBWBWBWWBBWWBWWBBWWBWBWBWWBWBWBWBBWWWWWBWBWWWWWWBWWBWWBWBWWBWWBWBWBWBWWBWWBBBWWW...

result:

ok ok (100 test cases)

Test #14:

score: 0
Accepted
time: 367ms
memory: 8176kb

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:

3558
BWBBWWWWWBWWWWBWWBWWWWWBWBWBBBBWWWBWWBBWWBWBWBWWBBBBWBBWBWWWBWWBWWBWWWWWBWBWWWBWBWWWBWBWWBBWBWWBWBBW
WBWWBBWBBWBWWWWBWWBWWWBWBWBWBWBWWBWBWBWWWWWWBWWBWWBWBBWBWWWBWWBWBBWBWBBBWWWBWBWWWBWWWBWBBWWBWBWWBWWW
BWBWWWBWBWWBWBBWBWWWWBWWBBWBWBWBBWWWWWBWBWBBWBWWWWWBWWWBWWWBWBWBBBBWBWWBWWWWBBWWBWWWWWBWWBWBW...

result:

ok ok (100 test cases)

Test #15:

score: 0
Accepted
time: 369ms
memory: 6756kb

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:

2448
WBBWBBBBWBBBWWWWBBBWWBBWWBWBBWBWBWBBBBBBBBWWBWBBBWWWWBBWWBBBWBWBWBBWBBWBBBBBWBWWWBBBWBBBWWBWBBWWWBWB
BWWBBBBWBWBBBBBBWWBBBBWBBBWWBBWBWBBBWBWBBWBBBWBBWBWBWBBWBBWBBWBBBBWBBBBBBWBBWBBBBWWBBBBWBBBWWBBBBBBW
WBBBBWBBWBWBBWBBWBWBBWBWBWBBBBBWWWWBBBWBBBWBWBWBWBWBBWBWBWBBWBWWBBWBWBWBWWBWWBBWBBBWBWWBBBBWB...

result:

ok ok (100 test cases)

Test #16:

score: 0
Accepted
time: 308ms
memory: 6916kb

input:

100
100 100
W??W?BB??WBBBWB?BBW?B???WBB?BW?B???W?BBBWBW?BBB?WWBWWW?BBW?BWB??WBBWB?BWW??BBW?BWBBB?BWBBBBWB??BBB?B
WBW??BWWB?WW?BBBWWBBB?B?WBW??B?BWBW??WWB?BBWWBBB??BB??BB?B?WBB??BBWWBW?B???BWB?WWBB?B?BBBBW??BBBBWW?
???BB?WW?BBBBB??WW??B?B?WB?B?B?BWWB?B?BBWBWWWBBW?BBB?W?B??BB?WBBW?WB?WBBWW?B?BB?WB?WW?...

output:

3208
WWBWBBBBWWBBBWBWBBWWBBWBWBBWBWBBBWBWBBBBWBWBBBBWWWBWWWWBBWBBWBWBWBBWBWBWWWBBBWBBWBBBWBWBBBBWBWWBBBWB
WBWBWBWWBBWWWBBBWWBBBWBWWBWBWBWBWBWBWWWBWBBWWBBBWWBBWBBBWBWWBBWWBBWWBWWBWBWBWBWWWBBWBWBBBBWBWBBBBWWW
BWBBBWWWWBBBBBWBWWWBBWBBWBWBWBWBWWBWBWBBWBWWWBBWBBBBBWWBBWBBWWBBWBWBWWBBWWBBWBBBWBBWWWBWBWBBB...

result:

ok ok (100 test cases)

Test #17:

score: 0
Accepted
time: 327ms
memory: 7296kb

input:

100
100 100
??B????B??W???BB????BW???B??W??????B????B???????????????BB??????WB???BW???W??W?????WB??W???BWB?????W
?W?????BBB?B?W???B?WBBB???????????WBBW?W?B??????W??WBW?????????BWW?BBB????BBB???B???B?W?W????????B?B
B??????B????B????B????WB?BW???????W??W???????W???BB??????????W???W?B??WB??BB???WB??B??...

output:

5779
WBBWBWBBWWWWBWBBBWWBBWWBWBWBWBWBWBWBWBWBBWBWBWBWBWBBWBWBBBWBBWBWWBBWWBWBWBWWWWWBWBWWBWBWBWBBWBBWBWBW
BWWBWBWBBBWBWWWBWBBWBBBWBWBWBWBWBWWBBWBWWBWBWBWBWBWWBWBWBWBWWBWBWWWBBBBWBWBBBWBWBWBWBBWBWBWWBWWBWBWB
BWBWBWBBWWBWBWBWBBWBWBWBWBWBWBWBWBWBWWWBBWBWBWBWBBBWBBWBWBWBBWBWBWBBBWWBWBBBWBWWBBWBBWBWBWBBW...

result:

ok ok (100 test cases)

Test #18:

score: 0
Accepted
time: 370ms
memory: 6952kb

input:

100
100 100
WW??W?BB??BB?BW???BW???W?W?W???B?WBW??BWB?BW????B?W?????W?BWBBWB????BWW??W?WWWBBW?WBW?????BBWBWBWWWB
W????W?WWWW???BBBBWWBBBBWB?WBBWBBW?BBWBWWB???BWWBWW?WW??BWBWWW?W???WB?WWW??BWW??W?W?B?WB?WBWB??B????
BBBB??BBWWB?BB?W???WWWWW??WWWBBBW????W????WB?W??WWB??WW?BWWBB?B?????WWB?BBBW??B?B??WWW...

output:

3677
WWBBWBBBWWBBWBWWWWBWWWWWBWBWWWBBWWBWWBBWBWBWBWBWBWWWBBWBWBBWBBWBWBWBBWWWBWBWWWBBWWWBWWBWBWBBWBWBWWWB
WBWWBWWWWWWBWWBBBBWWBBBBWBWWBBWBBWWBBWBWWBWBWBWWBWWBWWBWBWBWWWBWBWBWBBWWWBWBWWWBWBWBBBWBWWBWBWWBWWBW
BBBBWBBBWWBWBBWWWBWWWWWWBWWWWBBBWBBWBWBWBWWBBWBBWWBWBWWBBWWBBWBBWBWBWWBWBBBWBWBWBWBWWWWBWWBBB...

result:

ok ok (100 test cases)

Test #19:

score: 0
Accepted
time: 357ms
memory: 6464kb

input:

100
100 100
??BB?BB?B?W???BBB?????B?BB?BB?BWBB????W?WBB?W?BB?????????B????B?BB???B?BBBB???B?B?B??BB?BB?W??BB?BBB
BB?BBWB??B?B?BB???BB???BBB??B?BBBB?BB?B??BBB?B???????B??BB??B????BB?B??????BBBBBW?B?B???B????BBB???B
B?BB??B?B??BBB??W????B?BB?BB???BB??BB???BBBB??BB???B?BB??B?BB?BB??B??B??B?B??B??B?B??B...

output:

4003
WWBBWBBWBWWWBWBBBBWWBWBWBBWBBWBWBBBWWBWBWBBWWWBBWBWBWWBBWBWBWWBWBBWBWBWBBBBWWWBWBWBBWBBWBBBWBWBBWBBB
BBWBBWBBWBWBWBBWBWBBWBWBBBWWBWBBBBWBBWBWBBBBWBWWBWBWBBWWBBBWBBWBWBBWBWBBWBWBBBBBWBBWBWWBBBWBWBBBWBWB
BWBBWBBWBWBBBBWBWBWBWBWBBWBBWBWBBBWBBBWWBBBBBWBBWBWBWBBBWBWBBWBBBWBBWBWWBWBWWBBWBWBBWBBWBWBWB...

result:

ok ok (100 test cases)

Test #20:

score: 0
Accepted
time: 337ms
memory: 8176kb

input:

100
100 100
BW?B?B??BB??WWWB?W?B??WBWBB?BWBWB?B?WBBBBBB?B????BBWBBBWWBBB?BBB?WBBBBB?WWBBBWWWB??BBWB?BBWBWWBW?WWB
W??BBWBWBW???W??BWBB?BWBBBWWWBW?BWWWB?B?BBWBWB?B??B?WBBW?W?W?BB?B??WWB?BB?BBBWBB?BBB?WBWWBWBWBWB??BB
BB?WBW??WB?W?BW?WB?B?WB?W?B?B?BW?B??WB?WB?WW???WBBWBWBW?B???W??B??WB??B?BBBWBB?WWW???B...

output:

2489
BWBBWBWBBBWBWWWBWWWBBWWBWBBWBWBWBWBBWBBBBBBWBWBWBBBWBBBWWBBBWBBBWWBBBBBWWWBBBWWWBWWBBWBWBBWBWWBWBWWB
WBWBBWBWBWBWBWBWBWBBWBWBBBWWWBWBBWWWBWBWBBWBWBWBWWBBWBBWBWBWBBBWBWBWWBWBBWBBBWBBWBBBWWBWWBWBWBWBWBBB
BBBWBWWBWBWWBBWBWBWBBWBWWWBWBWBWWBBWWBWWBWWWBWBWBBWBWBWWBWWBWBWBWBWBBWBWBBBWBBWWWWWWBBWBWBWBB...

result:

ok ok (100 test cases)

Test #21:

score: 0
Accepted
time: 340ms
memory: 6980kb

input:

100
100 100
?WBWB?WWWWW??W?????BBW?WW?WWW???WW???BW?WWW???WWW??B?B?W?B?W??WBWW??WWBWBW?WWW?B???WW????WW?W?WW?WWW
WWW??BWW?WW?WW?WW???WWBWB?B?W?BW?W?BWWW?W???WWWW?WBWBBW?W?B?B?WB?B?W?W?BBW??W?W??????W?BWW?W???WWWW?
??WWWW?W?BW????B?W??BWW???W?W??B??WWB?W?WW????W?W?B?W??BBWB??WWBW?WW?W???W??B??WBWWW??...

output:

3481
WWBWBWWWWWWWBWWBBWBBBWWWWBWWWBWBWWBWBBWWWWWBWWWWWBWBWBBWBBWWWBWBWWBBWWBWBWBWWWBBBWBWWBWWBWWBWBWWWWWW
WWWBWBWWWWWBWWBWWBWBWWBWBWBWWWBWBWWBWWWWWWBWWWWWBWBWBBWBWBBWBWWBWBWWBWWBBWWBWBWBWBWBBWBBWWBWBWBWWWWW
BWWWWWBWBBWWBWBBBWBWBWWBWBWBWBWBWBWWBBWBWWWBWBWBWWBBWWBBBWBBWWWBWWWWBWWBWWBWBWBWBWWWWBWBWBWBW...

result:

ok ok (100 test cases)

Test #22:

score: 0
Accepted
time: 179ms
memory: 5888kb

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:

71
WBWBWBWBWB
BWBWBWBWBW
WBWBWBBBWB
BWBWBWWWBW
WBWBWBBBWB
BWBWBWBWBW
WBWBWBWBWW
BWBWBWBWBW
WBWBWBWBWB
BWBWBWBWBW
21
WBBWWWWBWW
BWWBBWWWBB
WWBWWBBWBW
WWWWWWWWWB
BBBWBBBWBW
WBWBWBWBBW
BBWBWBWBBW
WBBBWBBBWB
BWWWBWBWBW
WBBBBBWBWB
45
BWBWBBWWWW
WBBBBWBWBW
BBWWBBWBWB
WBWBWWBWBW
BWWWBBWBWW
WBWBWBBWBB
BWBBW...

result:

ok ok (10000 test cases)

Test #23:

score: 0
Accepted
time: 179ms
memory: 7920kb

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:

2
WBWWWWBBWW
WBWWWWBWWW
WWWBBBBWWB
BBBBWBBBWW
WBBBBBWBWW
WBBBBBWWWB
BWBBWBBWBB
BBBBWBWWWB
WBWWBBWWWW
BBWWBBBWBB
29
BWWWWBWBWB
BWWBBWWWBB
WBBWWBWWWB
WWWBWBWWBW
WWBBBWBBWB
BBWBWBWWBB
WWWWWBWBWW
WBWBBWBBWB
BWWBWBWWBW
WBBWBWWBWB
9
BWBWWWWWWW
WBBBBBBBWW
WBBBBWBWWW
BWBBBWWBWB
BWBBWWWWBB
WBWBBWBWBW
BWWWWBW...

result:

ok ok (10000 test cases)

Test #24:

score: 0
Accepted
time: 312ms
memory: 8328kb

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:

240
WBWBWBBBWB
WWBWBWWWBW
WBBWBWWBWB
WBBBWBBWWB
BWWBBWWBBW
WBWWWBBWWB
BWBWBBWBBW
BBWBWWBWBB
WWBWBWWWWW
WWBBWWBBWB
BWBWBBWWBW
WBBBWBWWBW
WBBBWWWWBB
WBBWBBWWWW
WBWBWWBWBB
BWWBWBWWWB
WBWWBBWBBW
WWWBWWWBBW
BWBWBBBWWB
BWWBWBWBWW
WBBBWWBWBW
BBBWBBWWBW
BBWBWBBWWW
BWBWWBWBBW
WBWBBWBWWW
WWBBWBBWBW
WWWWBWBBBW...

result:

ok ok (1000 test cases)

Test #25:

score: 0
Accepted
time: 298ms
memory: 6200kb

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:

585
WBWBWBWWBBBWWBWBWWBWBWWWWWBWWBWBWBWBWWWBWBWWWBBBWWWBWBWBWBBWWWBWWBWBWWWBWBWBWBWBWWBBWBBBWBWBWBWBWBWB
BWBWBWBBWBWWBWBWBBWBWBWBWBWWBWBWBWBWBWBWBWWBBWBWWWWWBWBWBWWBWBWBWWBWBWBWBWBWBWBWWBWWBWBWBWBWBWBWBWBW
BBWBWBWWWWBWWWBWBWBWBWBWWWBBWBWBWBWBWBBBWBWBWWWBWBWBWBWBBWBWBWBWBBWBWBWBWBWBWBWBBWBBWBWBWBWBWB...

result:

ok ok (1000 test cases)

Test #26:

score: -100
Time Limit Exceeded

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:

7761
WBWBWWBWBBWBWBWBWBBWBWBWWBBWBWBWBWWWBWBWBWBWBWBWBWBWBWBWWBWWWBWBWBWBWBWBWWWBBWWBWBWBWBWBWBWBWBWBWBWB
BWBWBBWBWWBWBWBWBBWBWBWBBBWBWBWBWBBBWBWBWBWBWBWBWBWBWBWBBWBWBWBWBWBWBWBWBWBWWBBWBWBWBWBWBWBWBWBWBWBW
WBWBWBWBWBWBWBWBWWBWBWBWBWBWBWBWBWBWBWBWBBBWBWBWBWBWBWBWWBBBWBWBWBWBWBWBWBWWBWWBWBWWWBWBWBWBW...

result: