QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#639336 | #7758. Painter | wpoem | WA | 2ms | 100456kb | C++20 | 2.5kb | 2024-10-13 19:03:00 | 2024-10-13 19:03:01 |
Judging History
answer
#include <bits/stdc++.h>
#ifndef ONLINE_JUDGE
#include "debug.h"
#else
#define debug(...) 42
#endif
using i64 = long long;
namespace ranges = std::ranges;
constexpr int N{10001};
char maze[N][N];
void draw_Circle(int x, int y, int r, int X1, int Y1, int X2, int Y2, char ch)
{
int XX = X1, YY = Y1;
X1 = std::max(X1, x - r), Y1 = std::max(Y1, y - r), X2 = std::min(X2, x + r), Y2 = std::min(Y2, y + r);
for (int i = X1; i <= X2; i++)
{
for (int j = Y1; j <= Y2; j++)
{
if ((i - x) * (i - x) + (j - y) * (j - y) <= r * r) {
maze[i - XX][j - YY] = ch;
}
}
}
return;
}
void draw_Rectangle(int x1, int y1, int x2, int y2, int X1, int Y1, int X2, int Y2, char ch)
{
int XX = X1, YY = Y1;
X1 = std::max(X1, x1), Y1 = std::max(Y1, y1), X2 = std::min(X2, x2), Y2 = std::min(Y2, y2);
for (int i = X1; i <= X2; i++)
{
for (int j = Y1; j <= Y2; j++)
{
maze[i - XX][j - YY] = ch;
}
}
}
void solve()
{
std::string ope;
std::vector<std::array<int, 6>> OPE;
int N; std::cin >> N; while (N--) {
std::string opt; std::cin >> opt;
int x1, yy1, x2, y2, r; char color;
if (opt == "Circle") {
std::cin >> yy1 >> x1 >> r >> color;
OPE.push_back({ 0, x1, yy1, r, 0, color });
} else if (opt == "Rectangle") {
std::cin >> yy1 >> x1 >> y2 >> x2 >> color;
OPE.push_back({ 1, x1, yy1, x2, y2, color });
} else {
std::cin >> yy1 >> x1 >> y2 >> x2;
for (int i = x1; i <= x2; i++) {
for (int j = yy1; j <= y2; j++) {
maze[i - x1][j - yy1] = (char)(46);
}
}
for (auto [op, x_1, y_1, x_2, y_2, ch] : OPE) {
if (op == 0) {
draw_Circle(x_1, y_1, x_2, x1, yy1, x2, y2, ch);
} else if (op = 1) {
draw_Rectangle(x_1, y_1, x_2, y_2, x1, yy1, x2, y2, ch);
}
}
for (int i = x2; i >= x1; i--) {
for (int j = yy1; j <= y2; j++) {
std::cout << maze[i - x1][j - yy1];
}
std::cout << "\n";
}
}
}
}
signed main()
{
std::cin.tie(nullptr)->sync_with_stdio(false);
int _(1);
#ifdef tests
std::cin >> _;
#endif
while (_--)
solve();
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 5708kb
input:
7 Circle 0 0 5 * Circle -2 2 1 @ Circle 2 2 1 @ Rectangle 0 -1 0 0 ^ Rectangle -2 -2 2 -2 _ Render -5 -5 5 5 Render -1 0 1 2
output:
.....*..... ..*******.. .**@***@**. .*@@@*@@@*. .**@***@**. *****^***** .****^****. .**_____**. .*********. ..*******.. .....*..... @*@ *** *^*
result:
ok 14 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 3688kb
input:
10 Rectangle -4262 2204 3116 9357 U Circle 7078 6883 4684 W Rectangle 390 675 1195 1251 = Rectangle 78 2138 3288 2570 5 Rectangle -874 797 -99 1440 3 Render 7261 -4311 7304 -4268 Render 2060 9253 2103 9296 Render -1379 -7141 -1336 -7098 Render 982 5708 1025 5751 Render 1080 -9592 1123 -9549
output:
............................................ ............................................ ............................................ ............................................ ............................................ ............................................ .................................
result:
ok 220 lines
Test #3:
score: 0
Accepted
time: 0ms
memory: 3672kb
input:
10 Rectangle -10000 -10000 10000 10000 @ Rectangle 1197 -1 1198 1 y Rectangle 3684 -1 3685 0 & Circle 8957 0 1 Y Rectangle -5375 0 -5373 2 < Circle 2683 0 0 7 Rectangle 1262 -1 1263 -1 i Circle 3238 0 0 K Circle -3533 0 0 G Render -1605 0 8394 0
output:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...
result:
ok single line: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'
Test #4:
score: 0
Accepted
time: 0ms
memory: 99184kb
input:
10 Rectangle -8228 -3399 3061 5167 P Circle 600 -5480 5406 b Rectangle -5644 -7645 -2592 2164 & Circle 5101 -2822 5474 ~ Rectangle -116 -2676 326 5228 X Rectangle -3772 1494 -3354 3523 ! Rectangle 2084 -729 2467 1390 ; Circle -786 900 658 3 Rectangle -290 514 436 662 g Render -7140 -4510 -7140 5489
output:
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...
result:
ok 10000 lines
Test #5:
score: 0
Accepted
time: 2ms
memory: 14076kb
input:
10 Render 4431 -6882 4486 -6880 Circle -5131 -3627 3919 K Rectangle 3708 -7820 7499 -3207 c Render 1734 4783 1752 4818 Circle 94 4899 1950 ' Render 8154 6624 8159 6862 Circle 3837 550 356 0 Render 2230 -2196 2232 -1293 Rectangle -935 701 949 1318 ? Render 5282 -7624 5997 -7624
output:
........................................................ ........................................................ ........................................................ ................... ................... ................... ................... ................... ................... ............
result:
ok 1183 lines
Test #6:
score: 0
Accepted
time: 1ms
memory: 5700kb
input:
10 Render -6920 -3210 -6633 -3205 Circle 5221 3077 390 F Render -6294 -8386 -6235 -8360 Circle 65 -687 1867 ] Render 1017 -8804 1689 -8803 Circle 475 1359 2114 ) Rectangle 52 -1984 1779 -614 M Rectangle 1506 -2131 2992 -871 g Render -6910 7316 -6904 7371 Render 8670 -8136 8684 -8117
output:
................................................................................................................................................................................................................................................................................................ ..............
result:
ok 111 lines
Test #7:
score: 0
Accepted
time: 0ms
memory: 4028kb
input:
10 Rectangle 310990349 810289642 815443779 836759585 ; Rectangle 793346907 -272571666 797309793 172290221 ] Rectangle 467935431 -439130559 544524486 229621852 3 Rectangle -224358535 -197178831 393287874 348972387 s Rectangle -150003927 9534824 -107643143 77085794 j Render -883072967 590805088 -88307...
output:
............................................ ............................................ ............................................ ............................................ ............................................ ............................................ .................................
result:
ok 220 lines
Test #8:
score: 0
Accepted
time: 0ms
memory: 3572kb
input:
10 Rectangle -1000000000 -1000000000 1000000000 1000000000 @ Rectangle 666424716 -2 666424717 -1 6 Circle 755891297 0 0 1 Rectangle -361127769 -2 -361127769 -2 I Circle -136039484 0 2 R Circle 728693826 0 0 2 Circle 973790054 0 1 : Rectangle -15797858 0 -15797857 1 n Circle -524847486 0 1 F Render 4...
output:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...
result:
ok single line: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'
Test #9:
score: 0
Accepted
time: 0ms
memory: 100456kb
input:
10 Rectangle -683173625 -208545790 788455256 559774142 k Rectangle 550039572 676387146 870043595 746454080 6 Circle -635500176 539751534 459474826 K Circle -368169606 -50341615 54579323 [ Rectangle 178677992 549182450 250843180 554111618 W Rectangle 285421932 292015869 444111356 330882883 D Circle 2...
output:
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...
result:
ok 10000 lines
Test #10:
score: 0
Accepted
time: 0ms
memory: 28796kb
input:
10 Circle -327739258 108614097 471789245 i Render 417699651 -399673115 417699665 -399672973 Circle -649877874 576490519 343765669 e Circle 157074784 278309489 244905082 m Circle 135451272 318059849 145847376 D Render 967202055 190570662 967202057 190573239 Rectangle 162938176 374114635 209950022 386...
output:
............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ............... ...............
result:
ok 2721 lines
Test #11:
score: -100
Wrong Answer
time: 0ms
memory: 16180kb
input:
10 Render -533535480 830670347 -533535412 830670414 Rectangle -489898220 692771916 874357297 886588824 W Circle -10510557 -16386069 199883455 t Circle -513183387 -375752587 463079364 4 Circle -459032851 -208111107 435256379 C Rectangle -26958781 274273387 402439794 324886701 / Circle -289184879 -102...
output:
..................................................................... ..................................................................... ..................................................................... ..................................................................... .......................
result:
wrong answer 69th lines differ - expected: 'CCC', found: '...'