| Task: | Monikulmio |
| Sender: | j3rmu |
| Submission time: | 2025-10-27 16:40:45 +0200 |
| Language: | C |
| Status: | READY |
| Result: | 14 |
| group | verdict | score |
|---|---|---|
| #1 | WRONG ANSWER | 14 |
| test | verdict | time | score | |
|---|---|---|---|---|
| #1 | WRONG ANSWER | 0.00 s | 0 | details |
| #2 | WRONG ANSWER | 0.00 s | 0 | details |
| #3 | WRONG ANSWER | 0.00 s | 0 | details |
| #4 | WRONG ANSWER | 0.00 s | 0 | details |
| #5 | ACCEPTED | 0.00 s | 7 | details |
| #6 | WRONG ANSWER | 0.00 s | 0 | details |
| #7 | WRONG ANSWER | 0.00 s | 0 | details |
| #8 | ACCEPTED | 0.00 s | 7 | details |
| #9 | WRONG ANSWER | 0.00 s | 0 | details |
| #10 | WRONG ANSWER | 0.00 s | 0 | details |
Compiler report
input/code.c: In function 'main':
input/code.c:87:5: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
87 | scanf("%i %i %i", &h, &w, &c);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
input/code.c:94:9: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
94 | scanf("%i %i", &(*n)->y, &(*n)->x);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Code
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
struct p
{
int x, y;
struct p* n;
};
static int w, h, c;
void dl (char* fb, struct p* p1, struct p* p2)
{
int dx, dy, tx, ty, i;
char tc;
dx = p2->x - p1->x;
dy = p2->y - p1->y;
tx = p1->x;
ty = p1->y;
tc = (dx < 0 && dy < 0) || (dx > 0 && dy > 0) ? '\\' :
(dx * dy < 0) ? '/' : '=';
while (dx || dy)
{
if (dx)
{
tx += dx < 0 ? -1 : 1;
dx += dx < 0 ? 1 : -1;
}
if (dy)
{
ty += dy < 0 ? -1 : 1;
dy += dy < 0 ? 1 : -1;
}
i = ty * w + tx;
if (fb[i] == '.')
fb[i] = tc;
}
}
void as (char* fb, struct p* ad)
{
struct p *c, *l;
l = ad;
while (ad)
{
fb[ad->y * w + ad->x] = '*';
if ((c = ad->n))
{
fb[c->y * w + c->x] = '*';
dl(fb, ad, c);
}
else
{
dl(fb, ad, l);
}
ad = ad->n;
}
}
void print_g (char* fb)
{
for (int i = 0; i < h; i++)
{
for (int j = 0; j < w; j++)
putc(*(fb + i * w + j), stdout);
putc('\n', stdout);
}
}
int main (void)
{
char* fb;
struct p *ppoints, **n = &ppoints;
scanf("%i %i %i", &h, &w, &c);
fb = malloc(w * h);
memset(fb, '.', w * h);
while (c--)
{
(*n) = malloc(sizeof(struct p));
scanf("%i %i", &(*n)->y, &(*n)->x);
(*n)->x--;
(*n)->y--;
n = &(*n)->n;
}
as(fb, ppoints);
print_g(fb);
free(fb);
return 0;
}
Test details
Test 1 (public)
Verdict: WRONG ANSWER
| input |
|---|
| 8 9 5 5 2 2 5 5 8 7 8 ... |
| correct output |
|---|
| ......... ....*.... .../#\... ../###\.. .*#####*. ... |
| user output |
|---|
| ......... ....*.... .../.\... ../...\.. .*.....*. ... |
Feedback: Incorrect character on row 6, col 2: expected '|', got '='
Test 2 (public)
Verdict: WRONG ANSWER
| input |
|---|
| 20 40 4 5 10 5 30 15 30 15 10 |
| correct output |
|---|
| ................................. |
| user output |
|---|
| ................................. |
Feedback: Incorrect character on row 6, col 10: expected '|', got '='
Test 3 (public)
Verdict: WRONG ANSWER
| input |
|---|
| 20 40 29 8 7 13 2 14 2 9 7 ... |
| correct output |
|---|
| ................................. |
| user output |
|---|
| ................................. |
Feedback: Incorrect character on row 10, col 7: expected '|', got '='
Test 4 (public)
Verdict: WRONG ANSWER
| input |
|---|
| 20 40 14 5 12 5 25 8 28 13 28 ... |
| correct output |
|---|
| ................................. |
| user output |
|---|
| ................................. |
Feedback: Incorrect character on row 4, col 9: 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: WRONG ANSWER
| input |
|---|
| 9 35 33 2 3 2 8 4 8 4 5 ... |
| correct output |
|---|
| ................................. |
| user output |
|---|
| ................................. |
Feedback: Incorrect character on row 3, col 8: expected '|', got '='
Test 7 (public)
Verdict: WRONG ANSWER
| input |
|---|
| 30 100 69 6 10 6 14 7 14 7 18 ... |
| correct output |
|---|
| ................................. |
| user output |
|---|
| ................................. |
Feedback: Incorrect character on row 9, col 20: 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: WRONG ANSWER
| input |
|---|
| 50 100 142 1 1 1 7 1 11 1 14 ... |
| correct output |
|---|
| *=====*===*==*................... |
| user output |
|---|
| *=====*===*==*................... |
Feedback: Incorrect character on row 2, col 1: expected '|', got '='
Test 10 (public)
Verdict: WRONG ANSWER
| input |
|---|
| 100 100 1000 10 1 4 7 1 4 1 9 ... |
| correct output |
|---|
| ...*====*........................ |
| user output |
|---|
| ...*====*........................ |
Feedback: Incorrect character on row 2, col 85: expected '|', got '='
