QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#595154 | #7758. Painter | mhw# | WA | 1ms | 3592kb | C++23 | 2.2kb | 2024-09-28 12:44:34 | 2024-09-28 12:44:43 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define pii pair<int, int>
#define inf 0x3f3f3f3f
#define db double
#define il inline
#define x first
#define y second
#define endl '\n'
const int N = 4e3 + 5;
const int mod = 998244353;
struct node
{
int op;
int x, y, r; char p;
int x1, y1, x2, y2;
}qx[N];
struct node2
{
int x1, y1, x2, y2, id;
}pt[N];
void solve()
{
int n;
cin >> n;
int cnt = 0;
for (int i = 1; i <= n; i++)
{
string s;
cin >> s;
if (s[0] == 'C')
{
qx[i].op = 1;
cin >> qx[i].x >> qx[i].y >> qx[i].r >> qx[i].p;
}
else if (s[2] == 'c')
{
qx[i].op = 2;
cin >> qx[i].x1 >> qx[i].y1 >> qx[i].x2 >> qx[i].y2 >> qx[i].p;
}
else
{
int x1, y1, x2, y2;
cin >> x1 >> y1 >> x2 >> y2;
pt[++cnt] = {x1, y1, x2, y2, i};
}
}
for (int i = 1; i <= cnt; i++)
{
auto [x1, y1, x2, y2, id] = pt[i];
for (int y = y2; y >= y1; y--)
{
for (int x = x2; x >= x1; x--)
{
char s = '.';
for (int j = 1; j < id; j++)
{
if (qx[j].op == 1)
{
int x1 = qx[j].x, y1 = qx[j].y, r = qx[j].r;
if ((x1 - x) * (x1 - x) + (y1 - y) * (y1 - y) <= r * r) s = qx[j].p;
}
else if (qx[j].op == 2)
{
int x1 = qx[j].x1, y1 = qx[j].y1, x2 = qx[j].x2, y2 = qx[j].y2;
if (x1 <= x && x <= x2 && y1 <= y && y <= y2) s = qx[j].p;
}
}
cout << s;
}
cout << '\n';
}
}
}
signed main()
{
// freopen("D:\\3022244240\\vscode\\txt\\in.txt", "r", stdin);
// freopen("D:\\3022244240\\vscode\\txt\\out.txt", "w", stdout);
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int T = 1; // cin >> T;
while (T--) solve();
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3556kb
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: 3568kb
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: 3592kb
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: '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@...@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'