| Task: | Monikulmio |
| Sender: | Lytsky |
| Submission time: | 2025-10-27 10:25:05 +0200 |
| Language: | C++ (C++11) |
| Status: | READY |
| Result: | 70 |
| group | verdict | score |
|---|---|---|
| #1 | ACCEPTED | 70 |
| test | verdict | time | score | |
|---|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | 7 | details |
| #2 | ACCEPTED | 0.00 s | 7 | details |
| #3 | ACCEPTED | 0.00 s | 7 | details |
| #4 | ACCEPTED | 0.00 s | 7 | details |
| #5 | ACCEPTED | 0.00 s | 7 | details |
| #6 | ACCEPTED | 0.00 s | 7 | details |
| #7 | ACCEPTED | 0.00 s | 7 | details |
| #8 | ACCEPTED | 0.00 s | 7 | details |
| #9 | ACCEPTED | 0.00 s | 7 | details |
| #10 | ACCEPTED | 0.00 s | 7 | details |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:79:24: warning: 'ascii' may be used uninitialized in this function [-Wmaybe-uninitialized] 79 | grid[y][x] = ascii;
Code
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, m, p, y, x;
cin >> n >> m >> p;
vector<vector<int>> points;
for (int index = 0; index < n; index++) {
points.push_back({});
for (int jndex = 0; jndex < m; jndex++) {
points[index].push_back(0);
}
}
vector<pair<int, int>> lines;
vector<string> grid;
for (int index = 0; index < p; index++) {
cin >> y >> x;
lines.push_back({y-1, x-1});
points[y-1][x-1] = 1;
}
for (int depth = 0; depth < n; depth++) {
grid.push_back("");
for (int width = 0; width < m; width++) {
if (points[depth][width] == 0) grid[depth] += ".";
else grid[depth] += "*";
}
}
for (int point = 0; point < p; point++) {
int y = lines[point].first;
int x = lines[point].second;
int lastY = lines[point-1].first;
int lastX = lines[point-1].second;
if (point == 0) {
lastY = lines[p-1].first;
lastX = lines[p-1].second;
}
pair<int, int> direction;
char ascii;
if (y == lastY && x < lastX) {
direction = {0, 1};
ascii = '=';
}
else if (y > lastY && x < lastX) {
direction = {-1, 1};
ascii = '/';
}
else if (x == lastX && y > lastY) {
direction = {-1, 0};
ascii = '|';
}
else if (y > lastY && x > lastX) {
direction = {-1, -1};
ascii = '\\';
}
else if (y == lastY && x > lastX) {
direction = {0, -1};
ascii = '=';
}
else if (y < lastY && x > lastX) {
direction = {1, -1};
ascii = '/';
}
else if (x == lastX && y < lastY) {
direction = {1, 0};
ascii = '|';
}
else if (y < lastY && x < lastX) {
direction = {1, 1};
ascii = '\\';
}
for (int index = 0; index < max(n, m); index++) {
if (grid[y + direction.first][x + direction.second] == '*') break;
y += direction.first;
x += direction.second;
grid[y][x] = ascii;
}
}
for (int index = 0; index < n; index++) {
cout << grid[index] << endl;
}
}
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 '.'
