QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#833427#9926. Flipping Pathssuperguymj#RE 1ms3952kbC++202.2kb2024-12-26 19:07:122024-12-26 19:07:12

Judging History

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

  • [2024-12-26 19:07:12]
  • 评测
  • 测评结果:RE
  • 用时:1ms
  • 内存:3952kb
  • [2024-12-26 19:07:12]
  • 提交

answer

#include<bits/stdc++.h>
#define N 500
using namespace std;

int T,m,n,aa,cnt[N];
char mm[N][N],ans[N][N];

inline bool judge()
{
    for(int i=1;i<=n+m;i++) cnt[i]=0;
    for(int i=1;i<=m;i++)
    {
        for(int j=1;j<=n;j++)
        {
            if(mm[i][j]=='B') cnt[i+j]++;
        }
    }
    int ct[2]={0,0};
    for(int i=2;i<=n+m;i++) ct[cnt[i]&1]++;
    if(ct[0] && ct[1]) return 0;
    return 1;
}

inline void work()
{
    puts("YES");
    if(mm[1][1]=='B')
    {
        aa++;
        for(int i=1;i<m;i++) ans[aa][i]='D';
        for(int i=1;i<n;i++) ans[aa][i+m-1]='R';
        for(int i=1;i<=m;i++) mm[i][1]='W'+'B'-mm[i][1];
        for(int i=2;i<=n;i++) mm[m][i]='W'+'B'-mm[m][i];
    }
    for(int i=2;i<=m+n;i++)
    {
        for(int x=m;x>=1;x--)
        {
            int y=i-x;
            if(y<1 || y>n) continue;
            if(mm[x][y]=='W') continue;
//            cout<<" "<<x<<" "<<y<<endl;
            aa++;
            int bb=0;
            for(int k=1;k<x-1;k++) ans[aa][++bb]='D';
            for(int k=1;k<y;k++) ans[aa][++bb]='R';
            ans[aa][++bb]='D';
            ans[aa][++bb]='R';
            for(int i=x;i<m;i++) ans[aa][++bb]='D';
            for(int i=y+1;i<n;i++) ans[aa][++bb]='R';

            aa++,bb=0;
            for(int k=1;k<x-1;k++) ans[aa][++bb]='D';
            for(int k=1;k<y;k++) ans[aa][++bb]='R';
            ans[aa][++bb]='R';
            ans[aa][++bb]='D';
            for(int i=x;i<m;i++) ans[aa][++bb]='D';
            for(int i=y+1;i<n;i++) ans[aa][++bb]='R';

            mm[x][y]='W'+'B'-mm[x][y];
            mm[x-1][y+1]='W'+'B'-mm[x-1][y+1];
        }
    }
    printf("%d\n",aa);
    for(int i=1;i<=aa;i++)
    {
        for(int j=1;j<=m+n-2;j++) printf("%c",ans[i][j]);
        puts("");
    }
}

int main()
{
    cin>>T;
    while(T--)
    {
        aa=0;
        scanf("%d%d",&m,&n);
        for(int i=1;i<=m;i++) scanf("%s",mm[i]+1);
        if(judge())
        {
            work();
            continue;
        }
        for(int i=1;i<=m;i++) for(int j=1;j<=n;j++) mm[i][j]='W'+'B'-mm[i][j];
        if(judge())
        {
            work();
            continue;
        }
        puts("NO");
    }
}

详细

Test #1:

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

input:

4
3 3
WBB
BWB
BBW
1 5
WWWWW
2 2
BB
BB
4 1
W
B
B
W

output:

YES
8
DRDR
RDDR
DDRR
DRDR
RDRD
RRDD
DRDR
DRRD
YES
0
YES
0
NO

result:

ok ok (4 test cases)

Test #2:

score: 0
Accepted
time: 0ms
memory: 3952kb

input:

323
1 2
BB
1 2
BW
1 2
WB
1 2
WW
2 1
B
B
2 1
B
W
2 1
W
B
2 1
W
W
1 3
BBB
1 3
BBW
1 3
BWB
1 3
BWW
1 3
WBB
1 3
WBW
1 3
WWB
1 3
WWW
2 2
BB
BB
2 2
BB
BW
2 2
BB
WB
2 2
BB
WW
2 2
BW
BB
2 2
BW
BW
2 2
BW
WB
2 2
BW
WW
2 2
WB
BB
2 2
WB
BW
2 2
WB
WB
2 2
WB
WW
2 2
WW
BB
2 2
WW
BW
2 2
WW
WB
2 2
WW
WW
3 1
B
B
B
3 ...

output:

YES
1
R
NO
NO
YES
0
YES
1
D
NO
NO
YES
0
YES
1
RR
NO
NO
NO
NO
NO
NO
YES
0
YES
0
NO
YES
3
DR
DR
RD
NO
YES
1
DR
NO
YES
2
DR
RD
NO
NO
YES
2
DR
RD
NO
YES
1
DR
NO
YES
3
DR
DR
RD
NO
YES
0
YES
1
DD
NO
NO
NO
NO
NO
NO
YES
0
YES
1
RRR
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
0
YES
0
NO
NO
NO
NO
NO
YES
5
D...

result:

ok ok (323 test cases)

Test #3:

score: 0
Accepted
time: 0ms
memory: 3952kb

input:

278
2 4
BWBW
WWBB
2 4
BWBW
WWBW
2 4
BWBW
WWWB
2 4
BWBW
WWWW
2 4
BWWB
BBBB
2 4
BWWB
BBBW
2 4
BWWB
BBWB
2 4
BWWB
BBWW
2 4
BWWB
BWBB
2 4
BWWB
BWBW
2 4
BWWB
BWWB
2 4
BWWB
BWWW
2 4
BWWB
WBBB
2 4
BWWB
WBBW
2 4
BWWB
WBWB
2 4
BWWB
WBWW
2 4
BWWB
WWBB
2 4
BWWB
WWBW
2 4
BWWB
WWWB
2 4
BWWB
WWWW
2 4
BWWW
BBBB
2 ...

output:

NO
NO
NO
NO
NO
NO
YES
3
DRRR
RRDR
RRRD
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
4
DRRR
RDRR
RDRR
RRDR
NO
NO
NO
YES
1
DRRR
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
6
DRRR
RDRR
RDRR
RRDR
RRDR
RRRD
NO
NO
YES
6
DRRR
RDRR
RDRR
RRDR
RRDR
RRRD
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
1
DRRR
NO
NO
NO
YES
4
DRRR
R...

result:

ok ok (278 test cases)

Test #4:

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

input:

333
3 3
BBW
WWB
BWB
3 3
BBW
WWB
BWW
3 3
BBW
WWB
WBB
3 3
BBW
WWB
WBW
3 3
BBW
WWB
WWB
3 3
BBW
WWB
WWW
3 3
BBW
WWW
BBB
3 3
BBW
WWW
BBW
3 3
BBW
WWW
BWB
3 3
BBW
WWW
BWW
3 3
BBW
WWW
WBB
3 3
BBW
WWW
WBW
3 3
BBW
WWW
WWB
3 3
BBW
WWW
WWW
3 3
BWB
BBB
BBB
3 3
BWB
BBB
BBW
3 3
BWB
BBB
BWB
3 3
BWB
BBB
BWW
3 3
BWB
...

output:

YES
5
DDRR
DRDR
RDDR
DRDR
DRRD
NO
NO
NO
NO
NO
YES
3
DDRR
DRDR
RDDR
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
5
DDRR
RDRD
RRDD
DRDR
DRRD
NO
NO
NO
NO
NO
YES
3
DDRR
RDRD
RRDD
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
7
DDRR
DDRR
DRDR
RDRD
RRDD
DRDR
DRRD
NO
NO
NO
NO
NO
YES
5
DDRR
DDRR
DRDR
RDRD
RRDD
NO
NO
NO
YES
...

result:

ok ok (333 test cases)

Test #5:

score: 0
Accepted
time: 0ms
memory: 3952kb

input:

266
3 3
WWB
WWW
WWW
3 3
WWW
BBB
BBB
3 3
WWW
BBB
BBW
3 3
WWW
BBB
BWB
3 3
WWW
BBB
BWW
3 3
WWW
BBB
WBB
3 3
WWW
BBB
WBW
3 3
WWW
BBB
WWB
3 3
WWW
BBB
WWW
3 3
WWW
BBW
BBB
3 3
WWW
BBW
BBW
3 3
WWW
BBW
BWB
3 3
WWW
BBW
BWW
3 3
WWW
BBW
WBB
3 3
WWW
BBW
WBW
3 3
WWW
BBW
WWB
3 3
WWW
BBW
WWW
3 3
WWW
BWB
BBB
3 3
WWW
...

output:

NO
NO
NO
NO
YES
7
DDRR
DRDR
RDDR
DDRR
DRDR
RDRD
RRDD
NO
NO
NO
NO
NO
YES
9
DDRR
DRDR
RDDR
DDRR
DRDR
RDRD
RRDD
DRDR
DRRD
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
5
DDRR
DRDR
RDDR
RDRD
RRDD
NO
NO
NO
NO
NO
YES
7
DDRR
DRDR
RDDR
RDRD
RRDD
DRDR
DRRD
NO
NO
NO
YES
4
DDRR
DRDR
DRDR
DRRD
NO
NO
NO
NO
NO
NO
NO...

result:

ok ok (266 test cases)

Test #6:

score: 0
Accepted
time: 0ms
memory: 3928kb

input:

245
4 2
WW
BB
WB
BW
4 2
WW
BB
WB
WB
4 2
WW
BB
WB
WW
4 2
WW
BB
WW
BB
4 2
WW
BB
WW
BW
4 2
WW
BB
WW
WB
4 2
WW
BB
WW
WW
4 2
WW
BW
BB
BB
4 2
WW
BW
BB
BW
4 2
WW
BW
BB
WB
4 2
WW
BW
BB
WW
4 2
WW
BW
BW
BB
4 2
WW
BW
BW
BW
4 2
WW
BW
BW
WB
4 2
WW
BW
BW
WW
4 2
WW
BW
WB
BB
4 2
WW
BW
WB
BW
4 2
WW
BW
WB
WB
4 2
WW
B...

output:

NO
NO
YES
3
DDDR
DRDD
RDDD
NO
YES
5
DDDR
DRDD
RDDD
DDDR
DDRD
NO
NO
NO
NO
NO
YES
5
DDDR
DRDD
RDDD
DDRD
DRDD
NO
YES
7
DDDR
DRDD
RDDD
DDRD
DRDD
DDDR
DDRD
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
4
DDRD
DRDD
DDDR
DDRD
NO
NO
NO
NO
NO
YES
2
DDRD
DRDD
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
2
DD...

result:

ok ok (245 test cases)

Test #7:

score: 0
Accepted
time: 1ms
memory: 3704kb

input:

200
5 3
BBB
BBB
WBW
BBW
BBW
5 3
BBB
BBB
WBW
BBW
BWB
5 3
BBB
BBB
WBW
BBW
BWW
5 3
BBB
BBB
WBW
BBW
WBB
5 3
BBB
BBB
WBW
BBW
WBW
5 3
BBB
BBB
WBW
BBW
WWB
5 3
BBB
BBB
WBW
BBW
WWW
5 3
BBB
BBB
WBW
BWB
BBB
5 3
BBB
BBB
WBW
BWB
BBW
5 3
BBB
BBB
WBW
BWB
BWB
5 3
BBB
BBB
WBW
BWB
BWW
5 3
BBB
BBB
WBW
BWB
WBB
5 3
BBB
...

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 (200 test cases)

Test #8:

score: 0
Accepted
time: 0ms
memory: 3920kb

input:

200
5 4
BWWB
WBWW
WBWW
WBWW
WBBW
5 4
BWWB
WBWW
WBWW
WBWW
WBWB
5 4
BWWB
WBWW
WBWW
WBWW
WBWW
5 4
BWWB
WBWW
WBWW
WBWW
WWBB
5 4
BWWB
WBWW
WBWW
WBWW
WWBW
5 4
BWWB
WBWW
WBWW
WBWW
WWWB
5 4
BWWB
WBWW
WBWW
WBWW
WWWW
5 4
BWWB
WBWW
WBWW
WWBB
BBBB
5 4
BWWB
WBWW
WBWW
WWBB
BBBW
5 4
BWWB
WBWW
WBWW
WWBB
BBWB
5 4
BW...

output:

NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
18
DRDDDRR
RDDDDRR
DDRDDRR
DRDDDRR
RDRDDDR
RRDDDDR
DDDRDRR
DDRDDRR
DRDRDDR
DRRDDDR
DDDDRRR
DDDRDRR
DRRDRDD
DRRRDDD
DDDRDRR
DDDRRDR
DDRRDRD
DDRRRDD
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
NO
YES
20
DRDDDRR
RDDDDRR
DDRDDRR
DRDDDRR
RD...

result:

ok ok (200 test cases)

Test #9:

score: -100
Runtime Error

input:

5
200 200
WBWWWBWBWWWWBWWWBBBBBBWBWWBWWBBWBWWBWBBBWBBWBBWBWBBWWWWWWBWWWBBWBWBWBWBBWBWWBWWBWBBBWWWBWBBWWBBBBBWWBBBBWWBBWBWWWBBWBWBWWWWBBWBWWBWWWWWBWWBBBBBWBBWBWWWWWBWWWBWBWWBBBBWWBWWWWBWBBWBWBBWWBWWBBWBWBWWBWBWB
BBWBBBBBWBWWWWWWWWWWBBWWWWBWWBWWBBBBBWWWBWBWWBBWBBWWBBBBBWWBWBWBWWBWBWBBBBWWWWBWBBBBBWBBB...

output:


result: