Submission details
Task:Monikulmio
Sender:Toitsu
Submission time:2025-10-27 15:53:35 +0200
Language:Python3 (PyPy3)
Status:READY
Result:70
Feedback
groupverdictscore
#1ACCEPTED70
Test results
testverdicttimescore
#1ACCEPTED0.04 s7details
#2ACCEPTED0.05 s7details
#3ACCEPTED0.05 s7details
#4ACCEPTED0.05 s7details
#5ACCEPTED0.05 s7details
#6ACCEPTED0.05 s7details
#7ACCEPTED0.06 s7details
#8ACCEPTED0.07 s7details
#9ACCEPTED0.07 s7details
#10ACCEPTED0.13 s7details

Code

initial_info = input()

height, width, tip_count = initial_info.split(" ")
height = int(height)
width = int(width)
tips = []

for i in range(int(tip_count)):
    a, b = input().split(" ")
    tips.append((int(b), int(a)))

grid = []

for x in range(1, height + 1):
    row = []

    for y in range(1, width + 1):
        if (y, x) in tips:
            row.append("*")
        else:
            row.append(".")
    
    grid.append(row)


# connect the tips
for i in range(len(tips)):
    x_a, y_a = tips[i]
    x_b, y_b = tips [0 if i == len(tips) - 1 else i + 1]

    x_val = x_a - x_b
    y_val = y_a - y_b

    direction = ""
    distance = max(abs(x_val), abs(y_val)) - 1

    if x_val > 0 and y_val < 0:
        direction = "left_down"
    elif x_val < 0 and y_val < 0:
        direction = "right_down"
    elif x_val < 0 and y_val > 0:
        direction = "right_up"
    elif x_val > 0 and y_val > 0:
        direction = "left_up"
    elif x_val > 0 and y_val == 0:
        direction = "left"
    elif x_val < 0 and y_val == 0:
        direction = "right"
    elif x_val == 0 and y_val < 0:
        direction = "down"
    elif x_val == 0 and y_val > 0:
        direction = "up"
    else:
        print(f"WTF?????: {x_val}, {y_val}")
    
    x_a -= 1
    y_a -= 1

    for j in range(1, distance + 1):
        if direction == "left_down":
            grid[y_a + j][x_a - j] = "/"
        elif direction == "right_down":
            grid[y_a + j][x_a + j] = "\\"
        elif direction == "right_up":
            grid[y_a - j][x_a + j] = "/"
        elif direction == "left_up":
            grid[y_a - j][x_a - j] = "\\"
        elif direction == "left":
            grid[y_a][x_a - j] = "="
        elif direction == "right":
            grid[y_a][x_a + j] = "="
        elif direction == "down":
            grid[y_a + j][x_a] = "|"
        elif direction == "up":
            grid[y_a - j][x_a] = "|"
        else:
            print(f"WTF?????: {direction}")


# print the grid
for row in grid:
    for element in row:
        print(element, end="")
    
    print("")

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