QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#670299 | #7758. Painter | zhcmmm | WA | 1ms | 3600kb | C++20 | 1.9kb | 2024-10-23 21:14:47 | 2024-10-23 21:14:49 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
const int N = 2010;
struct node{
int op;
int x1, x2, y1, y2, r;
char col;
}s[N];
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
int n;
cin >> n;
for(int i = 1;i <= n;i++){
string op;
cin >> op;
if(op == "Circle") {
int x, y, r;char col;
cin >> x >> y >> r >> col;
s[i].op = 0, s[i].x1 = x, s[i].y1 = y, s[i].r = r, s[i].col = col;
}
else if(op == "Rectangle") {
int x1, y1, x2, y2;
char col;
cin >> x1 >> y1 >> x2 >> y2 >> col;
s[i].op = 1, s[i].x1 = x1, s[i].x2 = x2, s[i].y1 = y1, s[i].y2 = y2, s[i].col = col;
}
else {
int x1, x2, y1, y2;
cin >> x1 >> y1 >> x2 >> y2;
s[i].op = 2, s[i].x1 = x1, s[i].x2 = x2, s[i].y2 = y2, s[i].y1 = y1;
}
}
auto check = [&](ll x1, ll y1, ll x2, ll y2, ll r){
return (x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2) <= r * r;
};
for(int i = 1;i <= n;i++){
if(s[i].op != 2) continue;
for(int y = s[i].y2;y >= s[i].y1;y--){
for(int x = s[i].x2;x >= s[i].x1;x--){
char ans = '.';
for(int j = 1;j <= i;j++){
if(s[j].op == 2) continue;
if(s[j].op == 0){
if(check(s[j].x1, s[j].y1, x, y, s[j].r)) {
ans = s[j].col;
}
}
else {
if(x >= s[j].x1 && x <= s[j].x2 && y >= s[j].y1 && y <= s[j].y2){
ans = s[j].col;
}
}
}
cout << ans;
}
cout << '\n';
}
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3596kb
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: 3600kb
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: 3528kb
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: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'