#include "doll.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> A, X, Y, C;
int dep[200];
int nextTrigger = -1;
int solve(vector<int> a, int d) {
if(a.size() == 1) return a[0];
int trigger = nextTrigger--;
vector<int> b;
dep[d]++;
for(int i = 0; i < a.size(); i+=2)
b.push_back(a[i]);
int l = solve(b, d+1);
b.clear();
for(int i = 1; i < a.size(); i+=2)
b.push_back(a[i]);
int r = solve(b, d+1);
b.clear();
if(-(trigger+1) >= X.size())
X.resize(-(trigger)), Y.resize(-(trigger));
X[-(trigger+1)] = l;
Y[-(trigger+1)] = r;
return trigger;
}
void create_circuit(int M, vector<int> A_) {
A = A_;
int N = A.size();
while(__builtin_popcount(A.size()+1) != 1) {
A.push_back(-1);
}
A.push_back(0);
C.assign(M+1, -1);
solve(A, 1);
// cerr << nextTrigger << endl;
// for(int i = 1; dep[i]; i++)
// cerr << i << ": " << dep[i] << endl;
//
// cerr << N << " " << X.size() << endl;
answer(C, X, Y);
}
Compilation message
doll.cpp: In function 'int solve(std::vector<int>, int)':
doll.cpp:13:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
13 | for(int i = 0; i < a.size(); i+=2)
| ~~^~~~~~~~~~
doll.cpp:17:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
17 | for(int i = 1; i < a.size(); i+=2)
| ~~^~~~~~~~~~
doll.cpp:22:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
22 | if(-(trigger+1) >= X.size())
| ~~~~~~~~~~~~~^~~~~~~~~~~
doll.cpp: In function 'void create_circuit(int, std::vector<int>)':
doll.cpp:31:7: warning: unused variable 'N' [-Wunused-variable]
31 | int N = A.size();
| ^
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
204 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
204 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
2 ms |
204 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Incorrect |
1 ms |
204 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Partially correct |
1 ms |
204 KB |
Output is partially correct |
2 |
Partially correct |
140 ms |
11604 KB |
Output is partially correct |
3 |
Partially correct |
135 ms |
11592 KB |
Output is partially correct |
4 |
Partially correct |
128 ms |
11944 KB |
Output is partially correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Partially correct |
1 ms |
204 KB |
Output is partially correct |
2 |
Partially correct |
140 ms |
11604 KB |
Output is partially correct |
3 |
Partially correct |
135 ms |
11592 KB |
Output is partially correct |
4 |
Partially correct |
128 ms |
11944 KB |
Output is partially correct |
5 |
Partially correct |
161 ms |
12916 KB |
Output is partially correct |
6 |
Partially correct |
133 ms |
12920 KB |
Output is partially correct |
7 |
Partially correct |
167 ms |
12796 KB |
Output is partially correct |
8 |
Partially correct |
135 ms |
12564 KB |
Output is partially correct |
9 |
Partially correct |
133 ms |
11596 KB |
Output is partially correct |
10 |
Partially correct |
132 ms |
12584 KB |
Output is partially correct |
11 |
Partially correct |
130 ms |
12288 KB |
Output is partially correct |
12 |
Partially correct |
124 ms |
11792 KB |
Output is partially correct |
13 |
Partially correct |
131 ms |
12096 KB |
Output is partially correct |
14 |
Partially correct |
134 ms |
12228 KB |
Output is partially correct |
15 |
Partially correct |
139 ms |
12228 KB |
Output is partially correct |
16 |
Partially correct |
5 ms |
672 KB |
Output is partially correct |
17 |
Correct |
74 ms |
6800 KB |
Output is correct |
18 |
Partially correct |
124 ms |
11832 KB |
Output is partially correct |
19 |
Partially correct |
144 ms |
11808 KB |
Output is partially correct |
20 |
Partially correct |
128 ms |
12448 KB |
Output is partially correct |
21 |
Partially correct |
137 ms |
12220 KB |
Output is partially correct |
22 |
Partially correct |
128 ms |
12232 KB |
Output is partially correct |