QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#287876 | #7758. Painter | yllcm# | WA | 1ms | 3532kb | C++20 | 1.7kb | 2023-12-21 08:49:10 | 2023-12-21 08:49:11 |
Judging History
answer
#include<bits/stdc++.h>
#define ll long long
#define db double
#define ull unsigned long long
#define pb push_back
#define mp make_pair
#define pii pair<int, int>
#define FR first
#define SE second
#define int long long
using namespace std;
inline int read() {
int x = 0; bool op = false;
char c = getchar();
while(!isdigit(c))op |= (c == '-'), c = getchar();
while(isdigit(c))x = (x << 1) + (x << 3) + (c ^ 48), c = getchar();
return op ? -x : x;
}
const int N = 2e3 + 10;
int n;
struct Cir {
int x, y, r;
bool chk(int _x, int _y) {
return (x - _x) * (x - _x) + (y - _y) * (y - _y) <= r * r;
}
}cir[N];
struct Rec {
int l1, l2, r1, r2;
bool chk(int _x, int _y) {
return _x >= l1 && _x <= r1 && _y >= l2 && _y <= r2;
}
}rec[N];
int opt[N];
char col[N];
signed main() {
n = read();
for(int i = 1; i <= n; i++) {
string op; cin >> op;
if(op == "Circle") {
int x = read(), y = read(), r = read();
opt[i] = 1; cir[i] = {x, y, r};
cin >> col[i];
}
else if(op == "Rectangle") {
int l1 = read(), l2 = read(), r1 = read(), r2 = read();
opt[i] = 2; rec[i] = {l1, l2, r1, r2};
cin >> col[i];
}
else {
int l1 = read(), l2 = read(), r1 = read(), r2 = read();
for(int y = r2; y >= l2; y--) {
for(int x = r1; x >= l1; x--) {
char res = '.';
for(int j = i - 1; j; j--) {
if(opt[j] == 1 && cir[j].chk(x, y)) {
res = col[j]; break;
}
if(opt[j] == 2 && rec[j].chk(x, y)) {
res = col[j]; break;
}
}
putchar(res);
}
putchar('\n');
}
}
}
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 1ms
memory: 3480kb
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: 3480kb
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: 3532kb
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: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'