QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#777835 | #5419. Triangles | haha# | AC ✓ | 1ms | 4092kb | C++14 | 2.2kb | 2024-11-24 10:12:11 | 2024-11-24 10:12:11 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
// n = 8, 9, 10 的方案
int A[8][6] = {
0, 0, 9, 4, 0, 20,
0, 20, 9, 4, 10, 20,
10, 20, 9, 4, 11, 4,
10, 20, 11, 4, 20, 20,
20, 0, 20, 20, 11, 4,
0, 0, 10, 0, 9, 4,
10, 0, 11, 4, 9, 4,
10, 0, 20, 0, 11, 4
};
int B[9][6] = {
0, 0, 20, 0, 16, 12,
0, 0, 16, 12, 0, 20,
0, 20, 12, 14, 13, 20,
20, 0, 20, 13, 16, 12,
16, 16, 16, 12, 20, 13,
16, 16, 20, 13, 20, 20,
16, 16, 20, 20, 13, 20,
16, 16, 13, 20, 12, 14,
16, 16, 12, 14, 16, 12
};
int C[10][6] = {
0, 0, 10, 8, 0, 20,
20, 0, 10, 8, 20, 20,
0, 20, 10, 8, 20, 20,
0, 0, 8, 0, 5, 4,
10, 3, 5, 4, 8, 0,
10, 3, 10, 8, 5, 4,
10, 3, 8, 0, 12, 0,
10, 3, 12, 0, 15, 4,
10, 3, 15, 4, 10, 8,
20, 0, 15, 4, 12, 0
};
void solve(int A[][6], int X, int Y) {
// 用队列轮流把每个三角形拆成 4 个
// 每个坐标后面都至少 7 个零,而所有三角形拆一轮数量乘 4,所以拆两轮就够了,无精度问题
queue<vector<int>> q;
for (int i = 0; i < X; i++) {
vector<int> vec;
for (int j = 0; j < 6; j++) vec.push_back(A[i][j] * ((int) 5e7));
q.push(vec);
}
while (q.size() < Y) {
vector<int> vec = q.front(); q.pop();
int x1 = vec[0], y1 = vec[1];
int x2 = vec[2], y2 = vec[3];
int x3 = vec[4], y3 = vec[5];
int x4 = (x1 + x2) / 2, y4 = (y1 + y2) / 2;
int x5 = (x2 + x3) / 2, y5 = (y2 + y3) / 2;
int x6 = (x3 + x1) / 2, y6 = (y3 + y1) / 2;
q.push({x1, y1, x4, y4, x6, y6});
q.push({x2, y2, x5, y5, x4, y4});
q.push({x3, y3, x6, y6, x5, y5});
q.push({x4, y4, x5, y5, x6, y6});
}
while (!q.empty()) {
vector<int> vec = q.front(); q.pop();
for (int i = 0; i < 6; i++) printf("%d%c", vec[i], "\n "[i < 5]);
}
}
int main() {
int n; scanf("%d", &n);
if (n < 8) {
printf("No\n");
return 0;
}
printf("Yes\n");
if (n % 3 == 2) solve(A, 8, n);
else if (n % 3 == 0) solve(B, 9, n);
else solve(C, 10, n);
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3672kb
input:
2
output:
No
result:
ok no solution
Test #2:
score: 0
Accepted
time: 0ms
memory: 4068kb
input:
24
output:
Yes 800000000 800000000 1000000000 650000000 1000000000 1000000000 800000000 800000000 1000000000 1000000000 650000000 1000000000 800000000 800000000 650000000 1000000000 600000000 700000000 800000000 800000000 600000000 700000000 800000000 600000000 0 0 500000000 0 400000000 300000000 1000000000 0 ...
result:
ok 24 acute triangles
Test #3:
score: 0
Accepted
time: 1ms
memory: 3968kb
input:
1
output:
No
result:
ok no solution
Test #4:
score: 0
Accepted
time: 1ms
memory: 3972kb
input:
3
output:
No
result:
ok no solution
Test #5:
score: 0
Accepted
time: 1ms
memory: 3728kb
input:
4
output:
No
result:
ok no solution
Test #6:
score: 0
Accepted
time: 1ms
memory: 3800kb
input:
5
output:
No
result:
ok no solution
Test #7:
score: 0
Accepted
time: 1ms
memory: 3688kb
input:
6
output:
No
result:
ok no solution
Test #8:
score: 0
Accepted
time: 1ms
memory: 4000kb
input:
7
output:
No
result:
ok no solution
Test #9:
score: 0
Accepted
time: 1ms
memory: 4056kb
input:
8
output:
Yes 0 0 450000000 200000000 0 1000000000 0 1000000000 450000000 200000000 500000000 1000000000 500000000 1000000000 450000000 200000000 550000000 200000000 500000000 1000000000 550000000 200000000 1000000000 1000000000 1000000000 0 1000000000 1000000000 550000000 200000000 0 0 500000000 0 450000000 ...
result:
ok 8 acute triangles
Test #10:
score: 0
Accepted
time: 0ms
memory: 3808kb
input:
9
output:
Yes 0 0 1000000000 0 800000000 600000000 0 0 800000000 600000000 0 1000000000 0 1000000000 600000000 700000000 650000000 1000000000 1000000000 0 1000000000 650000000 800000000 600000000 800000000 800000000 800000000 600000000 1000000000 650000000 800000000 800000000 1000000000 650000000 1000000000 1...
result:
ok 9 acute triangles
Test #11:
score: 0
Accepted
time: 1ms
memory: 3808kb
input:
10
output:
Yes 0 0 500000000 400000000 0 1000000000 1000000000 0 500000000 400000000 1000000000 1000000000 0 1000000000 500000000 400000000 1000000000 1000000000 0 0 400000000 0 250000000 200000000 500000000 150000000 250000000 200000000 400000000 0 500000000 150000000 500000000 400000000 250000000 200000000 5...
result:
ok 10 acute triangles
Test #12:
score: 0
Accepted
time: 1ms
memory: 3832kb
input:
11
output:
Yes 0 1000000000 450000000 200000000 500000000 1000000000 500000000 1000000000 450000000 200000000 550000000 200000000 500000000 1000000000 550000000 200000000 1000000000 1000000000 1000000000 0 1000000000 1000000000 550000000 200000000 0 0 500000000 0 450000000 200000000 500000000 0 550000000 20000...
result:
ok 11 acute triangles
Test #13:
score: 0
Accepted
time: 1ms
memory: 3748kb
input:
12
output:
Yes 0 0 800000000 600000000 0 1000000000 0 1000000000 600000000 700000000 650000000 1000000000 1000000000 0 1000000000 650000000 800000000 600000000 800000000 800000000 800000000 600000000 1000000000 650000000 800000000 800000000 1000000000 650000000 1000000000 1000000000 800000000 800000000 1000000...
result:
ok 12 acute triangles
Test #14:
score: 0
Accepted
time: 1ms
memory: 4056kb
input:
13
output:
Yes 1000000000 0 500000000 400000000 1000000000 1000000000 0 1000000000 500000000 400000000 1000000000 1000000000 0 0 400000000 0 250000000 200000000 500000000 150000000 250000000 200000000 400000000 0 500000000 150000000 500000000 400000000 250000000 200000000 500000000 150000000 400000000 0 600000...
result:
ok 13 acute triangles
Test #15:
score: 0
Accepted
time: 0ms
memory: 3780kb
input:
14
output:
Yes 500000000 1000000000 450000000 200000000 550000000 200000000 500000000 1000000000 550000000 200000000 1000000000 1000000000 1000000000 0 1000000000 1000000000 550000000 200000000 0 0 500000000 0 450000000 200000000 500000000 0 550000000 200000000 450000000 200000000 500000000 0 1000000000 0 5500...
result:
ok 14 acute triangles
Test #16:
score: 0
Accepted
time: 1ms
memory: 4064kb
input:
15
output:
Yes 0 1000000000 600000000 700000000 650000000 1000000000 1000000000 0 1000000000 650000000 800000000 600000000 800000000 800000000 800000000 600000000 1000000000 650000000 800000000 800000000 1000000000 650000000 1000000000 1000000000 800000000 800000000 1000000000 1000000000 650000000 1000000000 8...
result:
ok 15 acute triangles
Test #17:
score: 0
Accepted
time: 1ms
memory: 3756kb
input:
16
output:
Yes 0 1000000000 500000000 400000000 1000000000 1000000000 0 0 400000000 0 250000000 200000000 500000000 150000000 250000000 200000000 400000000 0 500000000 150000000 500000000 400000000 250000000 200000000 500000000 150000000 400000000 0 600000000 0 500000000 150000000 600000000 0 750000000 2000000...
result:
ok 16 acute triangles
Test #18:
score: 0
Accepted
time: 1ms
memory: 3792kb
input:
17
output:
Yes 500000000 1000000000 550000000 200000000 1000000000 1000000000 1000000000 0 1000000000 1000000000 550000000 200000000 0 0 500000000 0 450000000 200000000 500000000 0 550000000 200000000 450000000 200000000 500000000 0 1000000000 0 550000000 200000000 0 0 225000000 100000000 0 500000000 450000000...
result:
ok 17 acute triangles
Test #19:
score: 0
Accepted
time: 1ms
memory: 3772kb
input:
18
output:
Yes 1000000000 0 1000000000 650000000 800000000 600000000 800000000 800000000 800000000 600000000 1000000000 650000000 800000000 800000000 1000000000 650000000 1000000000 1000000000 800000000 800000000 1000000000 1000000000 650000000 1000000000 800000000 800000000 650000000 1000000000 600000000 7000...
result:
ok 18 acute triangles
Test #20:
score: 0
Accepted
time: 1ms
memory: 3772kb
input:
19
output:
Yes 0 0 400000000 0 250000000 200000000 500000000 150000000 250000000 200000000 400000000 0 500000000 150000000 500000000 400000000 250000000 200000000 500000000 150000000 400000000 0 600000000 0 500000000 150000000 600000000 0 750000000 200000000 500000000 150000000 750000000 200000000 500000000 40...
result:
ok 19 acute triangles
Test #21:
score: 0
Accepted
time: 1ms
memory: 3784kb
input:
20
output:
Yes 1000000000 0 1000000000 1000000000 550000000 200000000 0 0 500000000 0 450000000 200000000 500000000 0 550000000 200000000 450000000 200000000 500000000 0 1000000000 0 550000000 200000000 0 0 225000000 100000000 0 500000000 450000000 200000000 225000000 600000000 225000000 100000000 0 1000000000...
result:
ok 20 acute triangles
Test #22:
score: 0
Accepted
time: 1ms
memory: 3792kb
input:
21
output:
Yes 800000000 800000000 800000000 600000000 1000000000 650000000 800000000 800000000 1000000000 650000000 1000000000 1000000000 800000000 800000000 1000000000 1000000000 650000000 1000000000 800000000 800000000 650000000 1000000000 600000000 700000000 800000000 800000000 600000000 700000000 80000000...
result:
ok 21 acute triangles
Test #23:
score: 0
Accepted
time: 1ms
memory: 3776kb
input:
22
output:
Yes 500000000 150000000 250000000 200000000 400000000 0 500000000 150000000 500000000 400000000 250000000 200000000 500000000 150000000 400000000 0 600000000 0 500000000 150000000 600000000 0 750000000 200000000 500000000 150000000 750000000 200000000 500000000 400000000 1000000000 0 750000000 20000...
result:
ok 22 acute triangles
Test #24:
score: 0
Accepted
time: 1ms
memory: 3792kb
input:
23
output:
Yes 0 0 500000000 0 450000000 200000000 500000000 0 550000000 200000000 450000000 200000000 500000000 0 1000000000 0 550000000 200000000 0 0 225000000 100000000 0 500000000 450000000 200000000 225000000 600000000 225000000 100000000 0 1000000000 0 500000000 225000000 600000000 225000000 100000000 22...
result:
ok 23 acute triangles
Test #25:
score: 0
Accepted
time: 1ms
memory: 4024kb
input:
25
output:
Yes 500000000 150000000 500000000 400000000 250000000 200000000 500000000 150000000 400000000 0 600000000 0 500000000 150000000 600000000 0 750000000 200000000 500000000 150000000 750000000 200000000 500000000 400000000 1000000000 0 750000000 200000000 600000000 0 0 0 250000000 200000000 0 500000000...
result:
ok 25 acute triangles
Test #26:
score: 0
Accepted
time: 1ms
memory: 4092kb
input:
26
output:
Yes 500000000 0 550000000 200000000 450000000 200000000 500000000 0 1000000000 0 550000000 200000000 0 0 225000000 100000000 0 500000000 450000000 200000000 225000000 600000000 225000000 100000000 0 1000000000 0 500000000 225000000 600000000 225000000 100000000 225000000 600000000 0 500000000 0 1000...
result:
ok 26 acute triangles
Test #27:
score: 0
Accepted
time: 1ms
memory: 3788kb
input:
27
output:
Yes 800000000 800000000 1000000000 1000000000 650000000 1000000000 800000000 800000000 650000000 1000000000 600000000 700000000 800000000 800000000 600000000 700000000 800000000 600000000 0 0 500000000 0 400000000 300000000 1000000000 0 900000000 300000000 500000000 0 800000000 600000000 400000000 3...
result:
ok 27 acute triangles
Test #28:
score: 0
Accepted
time: 1ms
memory: 3788kb
input:
28
output:
Yes 500000000 150000000 400000000 0 600000000 0 500000000 150000000 600000000 0 750000000 200000000 500000000 150000000 750000000 200000000 500000000 400000000 1000000000 0 750000000 200000000 600000000 0 0 0 250000000 200000000 0 500000000 500000000 400000000 250000000 700000000 250000000 200000000...
result:
ok 28 acute triangles
Test #29:
score: 0
Accepted
time: 1ms
memory: 3864kb
input:
29
output:
Yes 500000000 0 1000000000 0 550000000 200000000 0 0 225000000 100000000 0 500000000 450000000 200000000 225000000 600000000 225000000 100000000 0 1000000000 0 500000000 225000000 600000000 225000000 100000000 225000000 600000000 0 500000000 0 1000000000 225000000 600000000 250000000 1000000000 4500...
result:
ok 29 acute triangles
Test #30:
score: 0
Accepted
time: 1ms
memory: 4060kb
input:
30
output:
Yes 800000000 800000000 650000000 1000000000 600000000 700000000 800000000 800000000 600000000 700000000 800000000 600000000 0 0 500000000 0 400000000 300000000 1000000000 0 900000000 300000000 500000000 0 800000000 600000000 400000000 300000000 900000000 300000000 500000000 0 900000000 300000000 40...
result:
ok 30 acute triangles
Test #31:
score: 0
Accepted
time: 1ms
memory: 4064kb
input:
31
output:
Yes 500000000 150000000 600000000 0 750000000 200000000 500000000 150000000 750000000 200000000 500000000 400000000 1000000000 0 750000000 200000000 600000000 0 0 0 250000000 200000000 0 500000000 500000000 400000000 250000000 700000000 250000000 200000000 0 1000000000 0 500000000 250000000 70000000...
result:
ok 31 acute triangles
Test #32:
score: 0
Accepted
time: 1ms
memory: 3792kb
input:
32
output:
Yes 0 0 225000000 100000000 0 500000000 450000000 200000000 225000000 600000000 225000000 100000000 0 1000000000 0 500000000 225000000 600000000 225000000 100000000 225000000 600000000 0 500000000 0 1000000000 225000000 600000000 250000000 1000000000 450000000 200000000 475000000 600000000 225000000...
result:
ok 32 acute triangles
Test #33:
score: 0
Accepted
time: 1ms
memory: 3840kb
input:
33
output:
Yes 800000000 800000000 600000000 700000000 800000000 600000000 0 0 500000000 0 400000000 300000000 1000000000 0 900000000 300000000 500000000 0 800000000 600000000 400000000 300000000 900000000 300000000 500000000 0 900000000 300000000 400000000 300000000 0 0 400000000 300000000 0 500000000 8000000...
result:
ok 33 acute triangles
Test #34:
score: 0
Accepted
time: 1ms
memory: 3848kb
input:
34
output:
Yes 500000000 150000000 750000000 200000000 500000000 400000000 1000000000 0 750000000 200000000 600000000 0 0 0 250000000 200000000 0 500000000 500000000 400000000 250000000 700000000 250000000 200000000 0 1000000000 0 500000000 250000000 700000000 250000000 200000000 250000000 700000000 0 50000000...
result:
ok 34 acute triangles
Test #35:
score: 0
Accepted
time: 1ms
memory: 3840kb
input:
35
output:
Yes 450000000 200000000 225000000 600000000 225000000 100000000 0 1000000000 0 500000000 225000000 600000000 225000000 100000000 225000000 600000000 0 500000000 0 1000000000 225000000 600000000 250000000 1000000000 450000000 200000000 475000000 600000000 225000000 600000000 500000000 1000000000 2500...
result:
ok 35 acute triangles
Test #36:
score: 0
Accepted
time: 1ms
memory: 3772kb
input:
36
output:
Yes 0 0 500000000 0 400000000 300000000 1000000000 0 900000000 300000000 500000000 0 800000000 600000000 400000000 300000000 900000000 300000000 500000000 0 900000000 300000000 400000000 300000000 0 0 400000000 300000000 0 500000000 800000000 600000000 400000000 800000000 400000000 300000000 0 10000...
result:
ok 36 acute triangles
Test #37:
score: 0
Accepted
time: 1ms
memory: 3840kb
input:
37
output:
Yes 1000000000 0 750000000 200000000 600000000 0 0 0 250000000 200000000 0 500000000 500000000 400000000 250000000 700000000 250000000 200000000 0 1000000000 0 500000000 250000000 700000000 250000000 200000000 250000000 700000000 0 500000000 1000000000 0 750000000 200000000 1000000000 500000000 5000...
result:
ok 37 acute triangles
Test #38:
score: 0
Accepted
time: 0ms
memory: 4020kb
input:
38
output:
Yes 0 1000000000 0 500000000 225000000 600000000 225000000 100000000 225000000 600000000 0 500000000 0 1000000000 225000000 600000000 250000000 1000000000 450000000 200000000 475000000 600000000 225000000 600000000 500000000 1000000000 250000000 1000000000 475000000 600000000 225000000 600000000 475...
result:
ok 38 acute triangles
Test #39:
score: 0
Accepted
time: 0ms
memory: 3796kb
input:
39
output:
Yes 1000000000 0 900000000 300000000 500000000 0 800000000 600000000 400000000 300000000 900000000 300000000 500000000 0 900000000 300000000 400000000 300000000 0 0 400000000 300000000 0 500000000 800000000 600000000 400000000 800000000 400000000 300000000 0 1000000000 0 500000000 400000000 80000000...
result:
ok 39 acute triangles
Test #40:
score: 0
Accepted
time: 1ms
memory: 3788kb
input:
40
output:
Yes 0 0 250000000 200000000 0 500000000 500000000 400000000 250000000 700000000 250000000 200000000 0 1000000000 0 500000000 250000000 700000000 250000000 200000000 250000000 700000000 0 500000000 1000000000 0 750000000 200000000 1000000000 500000000 500000000 400000000 750000000 700000000 750000000...
result:
ok 40 acute triangles
Test #41:
score: 0
Accepted
time: 1ms
memory: 3744kb
input:
41
output:
Yes 225000000 100000000 225000000 600000000 0 500000000 0 1000000000 225000000 600000000 250000000 1000000000 450000000 200000000 475000000 600000000 225000000 600000000 500000000 1000000000 250000000 1000000000 475000000 600000000 225000000 600000000 475000000 600000000 250000000 1000000000 5000000...
result:
ok 41 acute triangles
Test #42:
score: 0
Accepted
time: 1ms
memory: 4064kb
input:
42
output:
Yes 800000000 600000000 400000000 300000000 900000000 300000000 500000000 0 900000000 300000000 400000000 300000000 0 0 400000000 300000000 0 500000000 800000000 600000000 400000000 800000000 400000000 300000000 0 1000000000 0 500000000 400000000 800000000 400000000 300000000 400000000 800000000 0 5...
result:
ok 42 acute triangles
Test #43:
score: 0
Accepted
time: 0ms
memory: 4036kb
input:
43
output:
Yes 500000000 400000000 250000000 700000000 250000000 200000000 0 1000000000 0 500000000 250000000 700000000 250000000 200000000 250000000 700000000 0 500000000 1000000000 0 750000000 200000000 1000000000 500000000 500000000 400000000 750000000 700000000 750000000 200000000 1000000000 1000000000 100...
result:
ok 43 acute triangles
Test #44:
score: 0
Accepted
time: 1ms
memory: 3784kb
input:
44
output:
Yes 0 1000000000 225000000 600000000 250000000 1000000000 450000000 200000000 475000000 600000000 225000000 600000000 500000000 1000000000 250000000 1000000000 475000000 600000000 225000000 600000000 475000000 600000000 250000000 1000000000 500000000 1000000000 475000000 600000000 525000000 60000000...
result:
ok 44 acute triangles
Test #45:
score: 0
Accepted
time: 1ms
memory: 3844kb
input:
45
output:
Yes 500000000 0 900000000 300000000 400000000 300000000 0 0 400000000 300000000 0 500000000 800000000 600000000 400000000 800000000 400000000 300000000 0 1000000000 0 500000000 400000000 800000000 400000000 300000000 400000000 800000000 0 500000000 0 1000000000 300000000 850000000 325000000 10000000...
result:
ok 45 acute triangles
Test #46:
score: 0
Accepted
time: 1ms
memory: 3780kb
input:
46
output:
Yes 0 1000000000 0 500000000 250000000 700000000 250000000 200000000 250000000 700000000 0 500000000 1000000000 0 750000000 200000000 1000000000 500000000 500000000 400000000 750000000 700000000 750000000 200000000 1000000000 1000000000 1000000000 500000000 750000000 700000000 750000000 200000000 75...
result:
ok 46 acute triangles
Test #47:
score: 0
Accepted
time: 1ms
memory: 3752kb
input:
47
output:
Yes 450000000 200000000 475000000 600000000 225000000 600000000 500000000 1000000000 250000000 1000000000 475000000 600000000 225000000 600000000 475000000 600000000 250000000 1000000000 500000000 1000000000 475000000 600000000 525000000 600000000 450000000 200000000 500000000 200000000 475000000 60...
result:
ok 47 acute triangles
Test #48:
score: 0
Accepted
time: 1ms
memory: 3788kb
input:
48
output:
Yes 0 0 400000000 300000000 0 500000000 800000000 600000000 400000000 800000000 400000000 300000000 0 1000000000 0 500000000 400000000 800000000 400000000 300000000 400000000 800000000 0 500000000 0 1000000000 300000000 850000000 325000000 1000000000 600000000 700000000 625000000 850000000 300000000...
result:
ok 48 acute triangles
Test #49:
score: 0
Accepted
time: 0ms
memory: 3788kb
input:
49
output:
Yes 250000000 200000000 250000000 700000000 0 500000000 1000000000 0 750000000 200000000 1000000000 500000000 500000000 400000000 750000000 700000000 750000000 200000000 1000000000 1000000000 1000000000 500000000 750000000 700000000 750000000 200000000 750000000 700000000 1000000000 500000000 0 1000...
result:
ok 49 acute triangles
Test #50:
score: 0
Accepted
time: 1ms
memory: 3736kb
input:
50
output:
Yes 500000000 1000000000 250000000 1000000000 475000000 600000000 225000000 600000000 475000000 600000000 250000000 1000000000 500000000 1000000000 475000000 600000000 525000000 600000000 450000000 200000000 500000000 200000000 475000000 600000000 550000000 200000000 525000000 600000000 500000000 20...
result:
ok 50 acute triangles