QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#618851 | #7758. Painter | lixp | WA | 1ms | 3716kb | C++14 | 1.2kb | 2024-10-07 11:01:04 | 2024-10-07 11:01:08 |
Judging History
answer
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=1e5+10;
struct node {
int opt,x1,y1,x2,y2,r;
char col;
} p[N];
int n;char s[N];
char check(int px,int py,int t) {
for(int i=t;i>=1;i--) {
if(p[i].opt==0) continue;
if(p[i].opt==1) {
int x=p[i].x1,y=p[i].y1;
if((x-px)*(x-px)+(y-py)*(y-py)<=p[i].r*p[i].r) return p[i].col;
} else {
if(px<=p[i].x2 && px>=p[i].x1 && py<=p[i].y2 && py>=p[i].y1) return p[i].col;
}
}
return '.';
}
signed main() {
scanf("%lld",&n);
for(int i=1;i<=n;i++) {
scanf("%s",s+1);
if(s[1]=='C') {
p[i].opt=1;
scanf("%lld%lld%lld",&p[i].y1,&p[i].x1,&p[i].r);
scanf("%s",s+1);p[i].col=s[1];
} else if(s[3]=='c'){
p[i].opt=2;
scanf("%lld%lld%lld%lld",&p[i].y1,&p[i].x1,&p[i].y2,&p[i].x2);
scanf("%s",s+1);p[i].col=s[1];
} else {
int x1,y1,x2,y2; scanf("%lld%lld%lld%lld",&x1,&y1,&x2,&y2);
for(int x=y2;x>=y1;x--) {
for(int y=x2;y>=x1;y--) {
cout<<check(x,y,i);
}
cout<<endl;
}
}
}
return 0;
}
/*
3
Circle 0 0 5 *
Circle -2 2 1 @
Circle 2 2 1 @
Render -5 -5 5 5
Rectangle 0 -1 0 0 ^
Rectangle -2 -2 2 -2 _
Render -1 0 1 2
*/
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3612kb
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: 3712kb
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: 3716kb
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: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'