Submission details
Task:Monikulmio
Sender:alli
Submission time:2025-10-27 17:18:57 +0200
Language:C++ (C++20)
Status:READY
Result:70
Feedback
groupverdictscore
#1ACCEPTED70
Test results
testverdicttimescore
#1ACCEPTED0.01 s7details
#2ACCEPTED0.01 s7details
#3ACCEPTED0.01 s7details
#4ACCEPTED0.01 s7details
#5ACCEPTED0.01 s7details
#6ACCEPTED0.01 s7details
#7ACCEPTED0.01 s7details
#8ACCEPTED0.01 s7details
#9ACCEPTED0.01 s7details
#10ACCEPTED0.01 s7details

Code

#include <bits/stdc++.h>
typedef long long ll;
using namespace std;

ll n, m, k;
string s[101010];

void lisaa(int a, int b) {
    s[a][b-1] = '*';
}

void liita(int a1, int b1, int a2, int b2) {
    b1 -= 1;
    b2 -= 1;
    //cout << "liita " << a1 << "/" << b1 << " : " << a2 << "/" << b2 << endl;
    if (a1 == a2) {
        if (b1 > b2) swap(b1, b2);
        for (int i = b1+1; i < b2; i++) {
            s[a1][i] = '=';
        }
    }
    else if (b1 == b2) {
        if (a1 > a2) swap(a1, a2);
        for (int i = a1+1; i < a2; i++) {
            s[i][b1] = '|';
        }
    }
    else {
        if (a1 > a2) {swap(a1, a2); swap(b1, b2);}
        if (b2 > b1) {
            for (int i = 1; i < a2-a1; i++) {
                s[a1+i][b1+i] = '\\';
            }
        }
        else {
            for (int i = 1; i < a2-a1; i++) {
                s[a1+i][b1-i] = '/';
            }
        }
    }
}

int main() {
    //ios_base::sync_with_stdio(false);
    //cin.tie(nullptr);
    //freopen(R"(C:\Users\Kymppi\Downloads\test_input.txt)", "r", stdin);

    cin >> n >> m >> k;

    for (int i = 1; i <= n; i++) {
        s[i] = string(m, '.');
    }

    int f1 = 0, f2 = 0;
    int l1 = 0, l2 = 0;

    for (int i = 1; i <= k; i++) {
        int a, b;
        cin >> a >> b;
        if (i == 1) {
            f1 = a;
            f2 = b;
        }else {
            liita(l1, l2, a, b);
        }
        l1 = a;
        l2 = b;
        lisaa(a, b);
        if (i == k) {
            liita(f1, f2, a, b);
        }
    }

    /*liita(7, 2, 7, 8);
    liita(5, 8, 7, 8);
    liita(5, 2, 7, 2);
    liita(5, 2, 2, 5);
    liita(2, 5, 5, 8);*/
    //liita(5, 8-1, 2, 5-1);


    for (int i = 1; i <= n; i++) {
        cout << s[i] << "\n";
    }
}

Test details

Test 1 (public)

Verdict: ACCEPTED

input
8 9 5
5 2
2 5
5 8
7 8
...

correct output
.........
....*....
.../#\...
../###\..
.*#####*.
...

user output
.........
....*....
.../.\...
../...\..
.*.....*.
...

Feedback: Lines are drawn correctly. Incorrect fill character on row 3, col 5: expected '#', got '.'

Test 2 (public)

Verdict: ACCEPTED

input
20 40 4
5 10
5 30
15 30
15 10

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 6, col 11: expected '#', got '.'

Test 3 (public)

Verdict: ACCEPTED

input
20 40 29
8 7
13 2
14 2
9 7
...

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 4, col 30: expected '#', got '.'

Test 4 (public)

Verdict: ACCEPTED

input
20 40 14
5 12
5 25
8 28
13 28
...

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 4, col 10: expected '#', got '.'

Test 5 (public)

Verdict: ACCEPTED

input
20 40 12
3 20
7 16
7 9
11 13
...

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 4, col 20: expected '#', got '.'

Test 6 (public)

Verdict: ACCEPTED

input
9 35 33
2 3
2 8
4 8
4 5
...

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 3, col 3: expected '#', got '.'

Test 7 (public)

Verdict: ACCEPTED

input
30 100 69
6 10
6 14
7 14
7 18
...

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 7, col 10: expected '#', got '.'

Test 8 (public)

Verdict: ACCEPTED

input
40 60 192
11 3
11 5
10 6
11 7
...

correct output
.................................

user output
.................................

Feedback: Lines are drawn correctly. Incorrect fill character on row 3, col 30: expected '#', got '.'

Test 9 (public)

Verdict: ACCEPTED

input
50 100 142
1 1
1 7
1 11
1 14
...

correct output
*=====*===*==*...................

user output
*=====*===*==*...................

Feedback: Lines are drawn correctly. Incorrect fill character on row 2, col 11: expected '#', got '.'

Test 10 (public)

Verdict: ACCEPTED

input
100 100 1000
10 1
4 7
1 4
1 9
...

correct output
...*====*........................

user output
...*====*........................

Feedback: Lines are drawn correctly. Incorrect fill character on row 2, col 6: expected '#', got '.'