QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#769616#9621. 连方333zhan#AC ✓6ms4228kbC++202.3kb2024-11-21 18:35:492024-11-21 18:35:49

Judging History

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

  • [2024-11-21 18:35:49]
  • 评测
  • 测评结果:AC
  • 用时:6ms
  • 内存:4228kb
  • [2024-11-21 18:35:49]
  • 提交

answer

#include <bits/stdc++.h>
#define int long long

using namespace std;

void solve () {
    int n;
    cin >> n;

    string s1, s2;
    cin >> s1 >> s2;

    const string str = string (n, '#');

    int sum = 0;
    if (s1 == str) {
        sum ++;
    }
    if (s2 == str) {
        sum ++;
    }

    if (sum == 1) {
        cout << "No\n";
        return;
    }

    cout << "Yes\n";
    if (sum == 2) {
        for (int i = 0; i < 7; i ++) {
            cout << str << '\n';
        }
        return;
    } 

    vector <string> ans (7, string (n, '.'));
    ans[0] = s1;
    ans.back () = s2;

    for (int i = 0; i < n; i ++) {
        if (s1[i] == '#') {
            ans[1][i] = '.';
        } else {
            ans[1][i] = '#';
        }
        if (s2[i] == '#') {
            ans[5][i] = '.';
        } else {
            ans[5][i] = '#';
        }
    }

    int id1, id2;
    for (int i = 0; i < n; i ++) {
        bool ok = false;
        if (i) {
            if (ans[1][i - 1] == '#') {
                ok = true;
            }
        }
        if (i < n - 1) {
            if (ans[1][i + 1] == '#') {
                ok = true;
            }
        }
        if (ans[1][i] == '.' && ok) {
            ans[2][i] = '#';
            id1 = i;
            break;
        }
    }
    for (int i = 0; i < n; i ++) {
        bool ok = false;
        if (i) {
            if (ans[5][i - 1] == '#') {
                ok = true;
            }
        }
        if (i < n - 1) {
            if (ans[5][i + 1] == '#') {
                ok = true;
            }
        }
        if (ans[5][i] == '.' && ok) {
            ans[4][i] = '#';
            id2 = i;
            break;
        }
    }

    if (id1 == id2 || abs (id1 - id2) == 1) {
        ans[3][id1] = '#';
    } else {
        if (id1 > id2) {
            swap (id1, id2);
        }
        for (int i = id1 + 1; i <= id2 - 1; i ++) {
            ans[3][i] = '#';
        }
    }

    for (int i = 0; i < 7; i ++) {
        cout << ans[i] << '\n';
    }
}

signed main () {
    ios::sync_with_stdio (false);
    cin.tie (nullptr);

    int T = 1;
    cin >> T;

    while (T --) {
        solve ();
    }

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

5
4
#..#
.##.
5
##.#.
.#.##
6
######
.####.
27
.######.######.####.#.#####
.####...####..#.......#####
10
##########
##########

output:

Yes
#..#
.##.
#...
#...
.#..
#..#
.##.
Yes
##.#.
..#.#
.#...
.#...
.#...
#.#..
.#.##
No
Yes
.######.######.####.#.#####
#......#......#....#.#.....
.#.........................
.#.........................
.#.........................
#....###....##.#######.....
.####...####..#.......#####
Yes
########...

result:

ok Correct.

Test #2:

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

input:

10000
6
.#..##
..#...
5
#..#.
##...
6
.###.#
...###
17
.####..#######..#
###########.#####
6
..##.#
#.##.#
25
#.##.##############.####.
####################.##.#
9
##.#..##.
##..#####
6
.###.#
##.###
6
###..#
#.####
25
#####################.#.#
######.##################
6
.#.###
.##..#
6
..####
#......

output:

Yes
.#..##
#.##..
.#....
.#....
..#...
##.###
..#...
Yes
#..#.
.##.#
#....
#....
.#...
..###
##...
Yes
.###.#
#...#.
.#....
..#...
...#..
###...
...###
Yes
.####..#######..#
#....##.......##.
.#...............
..########.......
..........#......
...........#.....
###########.#####
Yes
..##.#
##..#.
...

result:

ok Correct.

Test #3:

score: 0
Accepted
time: 6ms
memory: 3712kb

input:

10000
41
#######.#######.#########################
################.###.#######.############
6
..#..#
#..##.
6
#.#...
#...#.
6
.#.##.
....##
6
...#.#
##..#.
33
#####.###########################
###########.#####################
6
.##.##
.##.#.
5
..##.
####.
17
#.###.##########.
####.##.#####.##.
5
....

output:

Yes
#######.#######.#########################
.......#.......#.........................
......#..................................
.......########..........................
...............#.........................
................#...#.......#............
################.###.#######.############
Ye...

result:

ok Correct.

Test #4:

score: 0
Accepted
time: 6ms
memory: 3708kb

input:

10000
6
..####
.#....
6
...#.#
#..##.
9
..####.##
######..#
33
#######################.#####..##
######.######.###########.#######
6
####.#
#..##.
6
...###
##.###
25
######.#.#.##############
.#########.##########.###
17
############.####
###############.#
6
#..#.#
#####.
6
.#.###
..#...
49
########...

output:

Yes
..####
##....
..#...
..#...
.#....
#.####
.#....
Yes
...#.#
###.#.
...#..
.##...
#.....
.##..#
#..##.
Yes
..####.##
##....#..
..#......
...##....
.....#...
......##.
######..#
Yes
#######################.#####..##
.......................#.....##..
......................#..........
......########...

result:

ok Correct.

Test #5:

score: 0
Accepted
time: 6ms
memory: 3648kb

input:

10000
5
...#.
#####
6
###...
##..#.
9
.#.######
#.#..####
49
######.##########################################
########.#############.##########################
41
###########.#######.#####################
##############.##########################
6
###..#
###.##
49
#################################...

output:

No
Yes
###...
...###
..#...
..#...
.#....
..##.#
##..#.
Yes
.#.######
#.#......
.#.......
.#.......
#........
.#.##....
#.#..####
Yes
######.##########################################
......#..........................................
.....#...........................................
......#............

result:

ok Correct.

Test #6:

score: 0
Accepted
time: 3ms
memory: 4228kb

input:

2
100000
###.#...#..####...#####..####.#.######.##.##..#..#..####...###.#..##.#.##.####.#.#.###...#.##...####.#.#.####...####.#..##.##.#.#.....####..####..#...#..#.##..#.##.#.....#..#.#.###.#....####...####..##.#.#####..####.##.#.###.#.#....#.##.##...#.######.#..##..##...#.....#....#.####...#...##.#...

output:

Yes
###.#...#..####...#####..####.#.######.##.##..#..#..####...###.#..##.#.##.####.#.#.###...#.##...####.#.#.####...####.#..##.##.#.#.....####..####..#...#..#.##..#.##.#.....#..#.#.###.#....####...####..##.#.#####..####.##.#.###.#.#....#.##.##...#.######.#..##..##...#.....#....#.####...#...##.##.#.....

result:

ok Correct.

Test #7:

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

input:

2
100000
##.####.#..#..#.##..#.#..###..##..#####.....#..##.##.#...#.###..##..#...##...####..#...##...##.......#.#..##.##..###.#.###.##.#########..#...###.####.##...#..#.....#####.....#.####.#####..#.#....#..###.#.##..#..#.##.......#.###.##...####.....######..#.##....#.#.###.#.###.#..#.....####....##...

output:

Yes
##.####.#..#..#.##..#.#..###..##..#####.....#..##.##.#...#.###..##..#...##...####..#...##...##.......#.#..##.##..###.#.###.##.#########..#...###.####.##...#..#.....#####.....#.####.#####..#.#....#..###.#.##..#..#.##.......#.###.##...####.....######..#.##....#.#.###.#.###.#..#.....####....##........

result:

ok Correct.