QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#254794#7758. Painterucup-team2010#WA 1ms3400kbC++203.0kb2023-11-18 13:54:172023-11-18 13:54:18

Judging History

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

  • [2023-11-18 13:54:18]
  • 评测
  • 测评结果:WA
  • 用时:1ms
  • 内存:3400kb
  • [2023-11-18 13:54:17]
  • 提交

answer

//(ᗜ ˰ ᗜ)
// #define NDEBUG
#include <bits/stdc++.h>
using namespace std;
namespace LING
{
#ifdef ONLINE_JUDGE
#define DBG(...) ;
#define dbg(...) ;
#else
#define DBG(x) cout << "! " << #x << " = " << x << endl
#include "debug.h"
#endif
    using ll = long long;
    using db = double;
#define SPO(x) fixed << setprecision(x)
#define FOR(i, l, r) for (ll i = l; i <= (r); ++i)
#define ROF(i, r, l) for (ll i = r; i >= (l); --i)
#define edl '\n'
#define fir first
#define sec second
#define str string
#define pll pair<ll, ll>
#define heap priority_queue
    // constexpr db PI = acos(-1.0);
    // constexpr db EPS = 1.0e-9;
    constexpr long long LNF = 0x3f3f3f3f3f3f3f3fLL;
    constexpr int INF = 0x3f3f3f3f;
    constexpr long long MOD = 998244353;
    constexpr ll MXN = 1e6 + 5;
}
using namespace LING;
ll n, s1, s2;
struct node
{
    ll op;
    ll x, y, r;
    ll a, b, c, d;
    char col;
} v[MXN];
void Solve(void)
{
    cin >> n;
    FOR(i, 1, n)
    {
        str op;
        cin >> op;
        if (op == "Circle")
        {
            v[i].op = 1;
            cin >> v[i].x >> v[i].y >> v[i].r >> v[i].col;
        }
        else if (op == "Rectangle")
        {
            v[i].op = 2;
            cin >> v[i].a >> v[i].b >> v[i].c >> v[i].d >> v[i].col;
        }
        else
        {
            ll xx1, xx2, yy1, yy2;
            cin >> xx1 >> yy1 >> xx2 >> yy2;
            ROF(yy, yy2, yy1)
            {
                ROF(xx, xx2, xx1)
                {
                    bool flag = 0;
                    ROF(j, i - 1, 1)
                    {
                        if (v[j].op == 0)
                            continue;
                        if (v[j].op == 1)
                        {
                            ll tmp = (xx - v[j].x) * (xx - v[j].x) + (yy - v[j].y) * (yy - v[j].y);
                            if (v[j].r * v[j].r >= tmp)
                            {
                                cout << v[j].col;
                                flag = 1;
                                break;
                            }
                        }
                        if (v[j].op == 2)
                        {
                            if (v[j].a <= xx && xx <= v[j].c && v[j].b <= yy && yy <= v[j].d)
                            {
                                cout << v[j].col;
                                flag = 1;
                                break;
                            }
                        }
                    }
                    if (!flag)
                        cout << '.';
                }
                cout << edl;
            }
        }
    }
    return;
}
int main(void)
{
    ios::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
    // #ifndef ONLINE_JUDGE
    // freopen("cin.txt","r",stdin);
    // freopen("cout.txt","w",stdout);
    // #endif

    int t = 1;
    // cin >> t;
    while (t--)
        Solve();
    return 0;
}

详细

Test #1:

score: 100
Accepted
time: 1ms
memory: 3400kb

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: 3396kb

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

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