QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#463218 | #8004. Bit Component | PhantomThreshold# | AC ✓ | 7ms | 5432kb | C++17 | 1.5kb | 2024-07-04 15:55:02 | 2024-07-04 15:55:02 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
int n;
void answer(const vector<int> &ans){
cout << "YES" << "\n";
for (auto x:ans){
cout << x << " ";
}
cout << "\n";
// for (int i=0;i<n;i++){
// cout << setw(2) << ans[i] << "\t: " << bitset<5>(ans[i]) << "\n";
// }
exit(0);
}
void no_sol(){
cout << "NO" << "\n";
exit(0);
}
vector<int> grey(int L){
vector<int> ans;
ans.push_back(0);
do{
int sz=ans.size();
for (int i=sz-1;i>=0;i--){
ans.push_back(ans[i]+sz);
}
}while ((int)ans.size()<L);
return ans;
}
vector<int> solve(int L){
vector<int> tmp0=grey(L/2);
vector<int> tmp1=grey(L/4);
vector<int> ans;
for (auto x:tmp0){
if (x!=0) ans.push_back(x);
}
for (auto x:tmp1){
if (x+L/2+L/4!=L-1) ans.push_back(x+L/2+L/4);
ans.push_back(x+L/2);
}
ans.push_back(L-1);
ans.push_back(L+L/2+1);
for (auto x:tmp0){
if (x!=0) ans.push_back(x+L);
}
ans.push_back(L);
ans.push_back(L+L/2);
return ans;
}
int main(){
ios_base::sync_with_stdio(false);
cin >> n;
if (n==1){
answer({1});
}
else if (n==3){
answer({2,3,1});
}
else if (n==7){
answer({1,3,2,6,4,5,7});
}
if (n<=12){
no_sol();
}
int L=1;
for (;L*2<=n;) L=L*2;
if (L<=n && n<=L+L/2){
no_sol();
}
vector<int> tmp=solve(L);
vector<int> ans;
for (auto x:tmp){
if (L+L/2+2<=x+L && x+L<=n){
ans.push_back(x+L);
ans.push_back(x);
}
else{
ans.push_back(x);
}
}
answer(ans);
return 0;
}
这程序好像有点Bug,我给组数据试试?
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3620kb
input:
1
output:
YES 1
result:
ok answer is 1
Test #2:
score: 0
Accepted
time: 0ms
memory: 3548kb
input:
2
output:
NO
result:
ok answer is 0
Test #3:
score: 0
Accepted
time: 0ms
memory: 3748kb
input:
3
output:
YES 2 3 1
result:
ok answer is 1
Test #4:
score: 0
Accepted
time: 0ms
memory: 3816kb
input:
4
output:
NO
result:
ok answer is 0
Test #5:
score: 0
Accepted
time: 0ms
memory: 3600kb
input:
5
output:
NO
result:
ok answer is 0
Test #6:
score: 0
Accepted
time: 0ms
memory: 3748kb
input:
6
output:
NO
result:
ok answer is 0
Test #7:
score: 0
Accepted
time: 0ms
memory: 3788kb
input:
7
output:
YES 1 3 2 6 4 5 7
result:
ok answer is 1
Test #8:
score: 0
Accepted
time: 0ms
memory: 3544kb
input:
8
output:
NO
result:
ok answer is 0
Test #9:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
9
output:
NO
result:
ok answer is 0
Test #10:
score: 0
Accepted
time: 0ms
memory: 3536kb
input:
10
output:
NO
result:
ok answer is 0
Test #11:
score: 0
Accepted
time: 0ms
memory: 3616kb
input:
11
output:
NO
result:
ok answer is 0
Test #12:
score: 0
Accepted
time: 0ms
memory: 3624kb
input:
12
output:
NO
result:
ok answer is 0
Test #13:
score: 0
Accepted
time: 0ms
memory: 3756kb
input:
13
output:
YES 1 3 2 6 4 5 7 13 9 11 10 8 12
result:
ok answer is 1
Test #14:
score: 0
Accepted
time: 0ms
memory: 3780kb
input:
14
output:
YES 1 3 2 14 6 4 5 7 13 9 11 10 8 12
result:
ok answer is 1
Test #15:
score: 0
Accepted
time: 0ms
memory: 3528kb
input:
15
output:
YES 1 3 2 14 6 4 5 15 7 13 9 11 10 8 12
result:
ok answer is 1
Test #16:
score: 0
Accepted
time: 0ms
memory: 3540kb
input:
16
output:
NO
result:
ok answer is 0
Test #17:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
17
output:
NO
result:
ok answer is 0
Test #18:
score: 0
Accepted
time: 0ms
memory: 3532kb
input:
23
output:
NO
result:
ok answer is 0
Test #19:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
24
output:
NO
result:
ok answer is 0
Test #20:
score: 0
Accepted
time: 0ms
memory: 3548kb
input:
25
output:
YES 1 3 2 6 7 5 4 12 8 13 9 11 14 10 15 25 17 19 18 22 23 21 20 16 24
result:
ok answer is 1
Test #21:
score: 0
Accepted
time: 0ms
memory: 3528kb
input:
26
output:
YES 1 3 2 6 7 5 4 12 8 13 9 11 14 26 10 15 25 17 19 18 22 23 21 20 16 24
result:
ok answer is 1
Test #22:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
27
output:
YES 1 3 2 6 7 5 4 12 8 13 9 27 11 14 26 10 15 25 17 19 18 22 23 21 20 16 24
result:
ok answer is 1
Test #23:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
40
output:
NO
result:
ok answer is 0
Test #24:
score: 0
Accepted
time: 0ms
memory: 3592kb
input:
53
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 16 25 17 27 51 19 26 50 18 30 22 23 29 53 21 28 52 20 31 49 33 35 34 38 39 37 36 44 45 47 46 42 43 41 40 32 48
result:
ok answer is 1
Test #25:
score: 0
Accepted
time: 0ms
memory: 3548kb
input:
93
output:
NO
result:
ok answer is 0
Test #26:
score: 0
Accepted
time: 0ms
memory: 3824kb
input:
105
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 32 49 33 51 99 35 50 98 34 54 102 38 55 103 39 53 101 37 52 100 36 60 44 61 45 47 62 46 58 42 59 43 57 105 41 56 104 40 63 97 65 67 66 70 71 69 68 76 77 79 78 74 75 73 72 88 89 91 90 94 95 93 92 84 85 87 86 82...
result:
ok answer is 1
Test #27:
score: 0
Accepted
time: 0ms
memory: 3536kb
input:
132
output:
NO
result:
ok answer is 0
Test #28:
score: 0
Accepted
time: 0ms
memory: 3820kb
input:
221
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 64 97 65 99 195 67 98 194 66 102 198 70 103 199 71 101 197 69 100 196 68 108 204 76 109 205 77 111 207 79 110 206...
result:
ok answer is 1
Test #29:
score: 0
Accepted
time: 0ms
memory: 3592kb
input:
373
output:
NO
result:
ok answer is 0
Test #30:
score: 0
Accepted
time: 0ms
memory: 3540kb
input:
473
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #31:
score: 0
Accepted
time: 0ms
memory: 3532kb
input:
513
output:
NO
result:
ok answer is 0
Test #32:
score: 0
Accepted
time: 0ms
memory: 3628kb
input:
934
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #33:
score: 0
Accepted
time: 0ms
memory: 3552kb
input:
1356
output:
NO
result:
ok answer is 0
Test #34:
score: 0
Accepted
time: 0ms
memory: 3844kb
input:
1651
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #35:
score: 0
Accepted
time: 0ms
memory: 3544kb
input:
2263
output:
NO
result:
ok answer is 0
Test #36:
score: 0
Accepted
time: 1ms
memory: 3668kb
input:
3330
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #37:
score: 0
Accepted
time: 0ms
memory: 3828kb
input:
4375
output:
NO
result:
ok answer is 0
Test #38:
score: 0
Accepted
time: 1ms
memory: 3656kb
input:
7989
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #39:
score: 0
Accepted
time: 0ms
memory: 3532kb
input:
10925
output:
NO
result:
ok answer is 0
Test #40:
score: 0
Accepted
time: 1ms
memory: 3740kb
input:
14097
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #41:
score: 0
Accepted
time: 0ms
memory: 3552kb
input:
16893
output:
NO
result:
ok answer is 0
Test #42:
score: 0
Accepted
time: 2ms
memory: 3832kb
input:
28913
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #43:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
40092
output:
NO
result:
ok answer is 0
Test #44:
score: 0
Accepted
time: 3ms
memory: 4264kb
input:
54980
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #45:
score: 0
Accepted
time: 0ms
memory: 3596kb
input:
88104
output:
NO
result:
ok answer is 0
Test #46:
score: 0
Accepted
time: 3ms
memory: 4532kb
input:
106284
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #47:
score: 0
Accepted
time: 0ms
memory: 3616kb
input:
152797
output:
NO
result:
ok answer is 0
Test #48:
score: 0
Accepted
time: 7ms
memory: 5432kb
input:
200000
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #49:
score: 0
Accepted
time: 1ms
memory: 3608kb
input:
3073
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #50:
score: 0
Accepted
time: 1ms
memory: 3736kb
input:
16383
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #51:
score: 0
Accepted
time: 0ms
memory: 3976kb
input:
32767
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #52:
score: 0
Accepted
time: 0ms
memory: 3604kb
input:
399
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 96 97 99 98 102 103 101 100 108 109 111 110 106 107 105 104 120 121 123 122 126 127 125 124 116 117 119 118 114 115 ...
result:
ok answer is 1
Test #53:
score: 0
Accepted
time: 0ms
memory: 3532kb
input:
5757
output:
NO
result:
ok answer is 0
Test #54:
score: 0
Accepted
time: 0ms
memory: 3484kb
input:
179
output:
NO
result:
ok answer is 0
Test #55:
score: 0
Accepted
time: 0ms
memory: 3628kb
input:
228
output:
YES 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8 24 25 27 26 30 31 29 28 20 21 23 22 18 19 17 16 48 49 51 50 54 55 53 52 60 61 63 62 58 59 57 56 40 41 43 42 46 47 45 44 36 37 39 38 34 35 33 32 224 96 64 225 97 65 227 99 195 67 226 98 194 66 102 198 70 103 199 71 101 197 69 228 100 196 68 108 204 76 109 205 7...
result:
ok answer is 1
Extra Test:
score: 0
Extra Test Passed