1
class Solution {
2
public:
3
vector<int> pathInZigZagTree(int label) {
4
vector<int> v;
5
int n = 0, num = label;
6
while (label) {
7
n++;
8
label = label >> 1;
9
}
10

11
int l, r, c, ans;
12
for (int i = n; i >= 2; i--) {
13
r = pow(2, i) - 1;
14
l = pow(2, i - 1);
15
c = r - num;
16
ans = l + c;
17
if ((n + i) % 2) {
18
v.push_back(ans);
19
} else {
20
v.push_back(num);
21
}
22
num /= 2;
23
}
24
v.push_back(1);
25
sort(v.begin(), v.end());
26
return v;
27
}
28
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0