QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#519204#7758. PainterLuCiiiD#WA 1ms3864kbC++232.4kb2024-08-14 17:22:272024-08-14 17:22:27

Judging History

你现在查看的是最新测评结果

  • [2024-08-14 17:22:27]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:3864kb
  • [2024-08-14 17:22:27]
  • 提交

answer

#include <bits/stdc++.h>
#define _11037_ ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
#define endl '\n'
#define int long long
#define inf 4e18
#define MAX 10005
using namespace std;
int N, x1, yy1, x2, y2, r;
char maze[MAX][MAX];
char color;
string ope;
vector<array<int, 6>> OPE;
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 = max(X1, x - r), Y1 = max(Y1, y - r), X2 = min(X2, x + r), Y2 = 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 = max(X1, x1), Y1 = max(Y1, y1), X2 = min(X2, x2), Y2 = min(Y2, y2);
    for (int i = X1; i <= X2; i++)
    {
        for (int j = Y1; j <= Y2; j++)
        {
            maze[i - XX][j - YY] = ch;
        }
    }
}
signed main()
{
    _11037_
    cin >> N;
    while (N--)
    {
        cin >> ope;
        if (ope == "Circle")
            cin >> yy1 >> x1 >> r >> color, OPE.push_back({0, x1, yy1, r, 0, color});
        else if (ope == "Rectangle")
            cin >> yy1 >> x1 >> y2 >> x2 >> color, OPE.push_back({1, x1, yy1, x2, y2, color});
        else
        {
            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 = y2; j >= yy1; j--)
                {
                    cout << maze[i - x1][j - yy1];
                }
                cout << endl;
            }
        }
    }
}
/*

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

*/

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3704kb

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: 1ms
memory: 3864kb

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: -100
Wrong Answer
time: 0ms
memory: 3620kb

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:

wrong answer 1st lines differ - expected: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@', found: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'