QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#519093 | #7758. Painter | chenyueshan# | WA | 1ms | 3784kb | C++20 | 2.9kb | 2024-08-14 16:17:41 | 2024-08-14 16:17:41 |
Judging History
answer
#include <bits/stdc++.h>
#define inf 0x3f3f3f3f3f3f3f3f
#define pb push_back
const int mod = 1e9 + 7;
const int N = 1e6 + 50;
//<< fixed << setprecision(1)
using namespace std;
int n;
int cnt = 0;
struct NODE
{
string s;
int x1, x2, y1, y2;
int r;
char ss;
} node[2010];
void solve()
{
cin >> n;
for (int i = 1; i <= n; ++i)
{
string s;
cin >> s;
if (s == "Circle")
{
int x, y, r;
cin >> x >> y >> r;
char ss;
cin >> ss;
cnt++;
node[cnt].s = s;
node[cnt].x1 = x;
node[cnt].y1 = y;
node[cnt].r = r;
node[cnt].ss = ss;
}
else if (s == "Rectangle")
{
int x1, y1, x2, y2;
cnt++;
cin >> x1 >> y1 >> x2 >> y2;
char ss;
cin >> ss;
node[cnt].s = s;
node[cnt].x1 = x1;
node[cnt].y1 = y1;
node[cnt].x2 = x2;
node[cnt].y2 = y2;
node[cnt].ss = ss;
}
else if (s == "Render")
{
int x1, y1, x2, y2;
cin >> x1 >> y1 >> x2 >> y2;
for (int q = y2; q >= y1; --q)
{
for (int p = x2; p >= x1; --p)
{
int flog = 0;
for (int k = cnt; k >= 1; --k)
{
if (node[k].s == "Circle")
{
if ((p - node[k].x1) * (p - node[k].x1) + (q - node[k].y1) * (q - node[k].y1) <= node[k].r * node[k].r)
{
cout << node[k].ss;
flog = 1;
break;
}
}
else
{
if (p >= node[k].x1 && p <= node[k].x2 && q >= node[k].y1 && q <= node[k].y2)
{
cout << node[k].ss;
flog = 1;
break;
}
}
}
if (flog == 0)
{
cout << ".";
}
}
if (!(y1 == y2))
{
cout << endl;
}
}
}
}
}
signed main()
{
ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
int T = 1;
// cin >> T;
while (T--)
{
solve();
}
}
/*
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
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3744kb
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: 3784kb
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: 3720kb
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: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'