QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#751326 | #9570. Binary Tree | Ado1phosa | AC ✓ | 256ms | 38500kb | C++23 | 3.0kb | 2024-11-15 18:08:55 | 2024-11-15 18:08:55 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define rep(i, l, r) for(int i = l; i <= (int)r; i ++)
#define debug(a) cout << #a << " = " << a << '\n';
#define debug2(a, b) cout << #a << " = " << a << " " << #b << " = " << b << '\n';
const int N = 2e5 + 5;
int n, sz[N];
set<int> adj[N];
void dfs_fi(int x, int father, vector<int> &node) {
node.push_back(x);
for(auto y : adj[x]) {
if(y == father) continue;
dfs_fi(y, x, node);
}
}
void dfs_se(int x, int father, int ¢er, int &weight, int total) {
sz[x] = 1;
vector<int> cut;
for(auto y : adj[x]) {
if(y == father) continue;
dfs_se(y, x, center, weight, total);
sz[x] += sz[y];
cut.push_back(sz[y]);
}
cut.push_back(total - sz[x]);
int Max = 0;
for(auto x : cut) {
Max = max(Max, x);
}
if(Max < weight) {
weight = Max;
center = x;
}
}
int find_center(int x) {
vector<int> node;
dfs_fi(x, -1, node);
for(auto x : node) sz[x] = 0;
int center = 0, weight = 1e9;
dfs_se(x, -1, center, weight, node.size());
return center;
}
void answer(int s) {
cout << "! " << s << endl;
}
int ask(int u, int v) {
cout << "? " << u << " " << v << endl;
int res;
cin >> res;
return res;
}
void add(int a, int b) {
adj[a].insert(b);
adj[b].insert(a);
}
void erase(int a, int b) {
adj[a].erase(b);
adj[b].erase(a);
}
int get_size(int x, int father) {
int res = 1;
for(auto y : adj[x]) {
if(y == father) continue;
res += get_size(y, x);
}
return res;
}
void solve() {
cin >> n;
rep(i, 1, n) adj[i].clear();
rep(i, 1, n) {
int l, r;
cin >> l >> r;
if(l) {
add(i, l);
}
if(r) {
add(i, r);
}
}
int root = 1;
while(true) {
int center = find_center(root);
int degree = adj[center].size();
if(degree == 0) {
answer(center);
break;
} else if(degree == 1) {
int u = center, v = *adj[u].begin();
int res = ask(u, v);
if(res == 0)
answer(u);
else
answer(v);
break;
} else if(degree == 2) {
int u = *adj[center].begin(), v = *adj[center].rbegin();
int res = ask(u, v);
if(res == 1) {
answer(center);
break;
} else {
if(res == 0) {
erase(center, u);
root = u;
} else {
erase(center, v);
root = v;
}
}
} else {
auto it = adj[center].begin();
int u = *it, v = *(++ it), w = *(++ it);
erase(center, u);
erase(center, v);
erase(center, w);
if(get_size(u, -1) < get_size(w, -1)) swap(u, w);
if(get_size(v, -1) < get_size(w, -1)) swap(v, w);
int res = ask(u, v);
if(res == 1) {
add(center, w);
root = center;
} else {
if(res == 0)
root = u;
else
root = v;
}
}
}
// cout << find_center(1) << '\n';
// rep(i, 1, n) cout << sz[i] << " ";
// dfs(root);
}
main() {
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int _ = 1;
cin >> _;
while(_ --) {
solve();
}
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 14024kb
input:
2 5 0 0 1 5 2 4 0 0 0 0 2 0 2 0 2 0 0 2
output:
? 1 3 ? 4 3 ! 4 ? 2 1 ! 1
result:
ok OK (2 test cases)
Test #2:
score: 0
Accepted
time: 113ms
memory: 15052kb
input:
5555 8 2 0 8 6 0 0 3 0 0 0 7 0 0 0 5 4 0 0 2 8 0 0 1 4 2 0 0 0 7 8 0 0 3 0 6 0 0 1 0 8 5 8 0 0 1 7 0 0 0 0 4 2 0 0 6 0 0 0 2 5 4 5 3 1 0 0 0 0 0 0 0 2 8 0 0 0 0 5 6 0 0 1 4 2 0 3 8 0 0 0 0 5 3 0 5 1 0 0 0 0 4 0 0 2 5 5 0 0 0 0 0 3 0 2 4 0 0 3 3 0 1 0 0 0 2 2 2 0 0 0 0 3 2 3 0 0 0 0 2 10 2 8 9 7 0 0 ...
output:
? 2 4 ? 2 7 ? 1 2 ! 2 ? 3 5 ? 1 3 ? 4 2 ! 4 ? 1 6 ? 1 7 ? 5 1 ! 1 ? 2 4 ? 3 2 ! 2 ? 5 6 ? 1 4 ! 1 ? 1 5 ? 3 1 ! 1 ? 4 2 ? 3 4 ! 3 ? 2 3 ! 3 ? 2 1 ! 2 ? 2 3 ! 3 ? 2 6 ? 1 9 ? 10 9 ! 9 ? 2 1 ! 2 ? 5 9 ? 4 5 ? 8 3 ! 8 ? 5 8 ? 7 5 ? 1 3 ! 1 ? 9 3 ? 1 7 ? 9 2 ! 9 ? 2 1 ! 1 ? 3 4 ? 1 7 ! 7 ? 4 5 ? 2 3 ? 4...
result:
ok OK (5555 test cases)
Test #3:
score: 0
Accepted
time: 83ms
memory: 13444kb
input:
600 2 2 0 0 0 2 3 2 0 3 0 0 0 2 4 4 0 1 0 0 0 3 0 0 0 5 4 0 0 0 1 0 2 0 3 0 2 0 6 4 0 6 0 2 0 5 0 0 0 1 0 0 0 7 7 0 3 0 6 0 5 0 2 0 1 0 0 0 0 1 8 7 0 0 0 2 0 8 0 1 0 5 0 3 0 6 0 0 2 2 9 7 0 4 0 2 0 1 0 0 0 8 0 9 0 5 0 6 0 2 2 2 10 9 0 6 0 8 0 7 0 0 0 10 0 2 0 4 0 5 0 1 0 0 2 2 11 2 0 10 0 6 0 9 0 0 ...
output:
? 2 1 ! 1 ? 1 3 ! 3 ? 1 3 ? 2 1 ! 2 ? 3 4 ? 2 4 ! 2 ? 1 2 ? 1 5 ! 1 ? 2 6 ? 2 4 ! 5 ? 1 6 ? 2 7 ? 1 7 ! 7 ? 1 9 ? 5 6 ? 9 6 ! 6 ? 6 7 ? 9 10 ? 6 10 ! 10 ? 2 9 ? 4 8 ? 9 4 ! 9 ? 2 9 ? 3 12 ? 3 9 ! 9 ? 2 3 ? 6 13 ? 2 13 ! 13 ? 4 13 ? 1 6 ? 5 6 ! 6 ? 2 14 ? 8 15 ? 14 15 ! 14 ? 1 15 ? 11 16 ? 1 6 ? 16 6...
result:
ok OK (600 test cases)
Test #4:
score: 0
Accepted
time: 189ms
memory: 38500kb
input:
2 99999 21832 0 77205 0 62668 0 58313 0 14640 0 76941 0 62678 0 8464 0 43145 0 26195 0 46140 0 83205 0 40047 0 81645 0 27077 0 92036 0 14236 0 3576 0 15430 0 75654 0 29049 0 62218 0 83318 0 1116 0 77861 0 9755 0 49236 0 70959 0 62295 0 33580 0 88208 0 55840 0 71061 0 24695 0 88831 0 1891 0 57285 0 9...
output:
? 43991 70790 ? 46637 98261 ? 58487 69452 ? 15987 33433 ? 55639 60027 ? 33034 49467 ? 34427 44552 ? 6841 11216 ? 28022 34666 ? 91905 98028 ? 47810 65281 ? 43292 99004 ? 20417 23011 ? 23406 84582 ? 16251 77025 ? 16251 23406 ! 23406 ? 44110 46352 ? 47168 63067 ? 38328 51576 ? 60860 75910 ? 28720 42451...
result:
ok OK (2 test cases)
Test #5:
score: 0
Accepted
time: 111ms
memory: 25504kb
input:
15 3 0 0 1 0 2 0 1 7 6 0 3 0 5 0 0 0 7 0 4 0 1 0 2 2 15 6 0 5 0 1 0 7 0 14 0 11 0 15 0 12 0 2 0 4 0 9 0 13 0 0 0 8 0 3 0 0 0 0 31 3 0 31 0 17 0 23 0 4 0 13 0 1 0 12 0 6 0 0 0 20 0 26 0 14 0 29 0 8 0 25 0 21 0 19 0 5 0 15 0 18 0 10 0 22 0 7 0 28 0 2 0 24 0 30 0 27 0 9 0 16 0 2 0 0 2 63 15 0 62 0 5 0 ...
output:
? 1 3 ! 2 ? 1 5 ? 2 5 ! 5 ? 6 9 ? 3 7 ? 3 6 ! 3 ? 13 29 ? 17 18 ? 1 24 ? 1 17 ! 17 ? 8 37 ? 10 24 ? 12 57 ? 4 46 ? 46 57 ! 34 ? 36 89 ? 96 110 ? 20 79 ? 62 106 ? 82 86 ? 61 82 ! 82 ? 64 233 ? 51 148 ? 19 31 ? 7 56 ? 10 217 ? 144 195 ? 56 144 ! 56 ? 48 439 ? 437 468 ? 3 274 ? 277 285 ? 125 377 ? 104 ...
result:
ok OK (15 test cases)
Test #6:
score: 0
Accepted
time: 104ms
memory: 26220kb
input:
16 2 2 0 0 0 2 4 4 0 3 0 1 0 0 0 0 0 8 5 0 0 0 4 0 8 0 2 0 3 0 6 0 1 0 2 0 2 16 2 0 5 0 1 0 11 0 13 0 14 0 8 0 6 0 0 0 4 0 3 0 7 0 15 0 10 0 16 0 9 0 0 0 0 0 32 15 0 0 0 14 0 18 0 26 0 17 0 25 0 27 0 6 0 9 0 4 0 13 0 23 0 30 0 32 0 12 0 11 0 31 0 28 0 3 0 19 0 10 0 22 0 7 0 5 0 29 0 24 0 20 0 21 0 1...
output:
? 2 1 ! 1 ? 1 2 ? 4 1 ! 4 ? 3 8 ? 1 2 ? 8 1 ! 1 ? 3 4 ? 5 15 ? 2 3 ? 5 2 ! 5 ? 12 30 ? 4 17 ? 10 23 ? 9 17 ? 10 9 ! 9 ? 3 60 ? 41 49 ? 31 37 ? 35 40 ? 37 62 ? 40 62 ! 40 ? 57 124 ? 48 58 ? 39 69 ? 31 37 ? 76 125 ? 14 31 ? 76 14 ! 76 ? 90 113 ? 91 222 ? 57 148 ? 68 231 ? 112 255 ? 81 135 ? 251 255 ? ...
result:
ok OK (16 test cases)
Test #7:
score: 0
Accepted
time: 109ms
memory: 26276kb
input:
15 2 2 0 0 0 2 6 5 0 1 0 6 0 2 0 3 0 0 0 0 2 14 12 0 0 0 11 0 5 0 7 0 1 0 8 0 10 0 14 0 13 0 6 0 9 0 2 0 4 0 2 0 1 30 10 0 29 0 23 0 28 0 9 0 14 0 2 0 30 0 19 0 0 0 15 0 1 0 22 0 8 0 18 0 27 0 7 0 24 0 26 0 3 0 20 0 25 0 6 0 17 0 4 0 12 0 21 0 16 0 13 0 5 0 2 0 0 2 62 24 0 22 0 18 0 17 0 49 0 53 0 3...
output:
? 2 1 ! 1 ? 1 3 ? 1 4 ! 4 ? 5 14 ? 6 12 ? 3 6 ! 11 ? 16 21 ? 5 8 ? 12 19 ? 10 12 ! 12 ? 10 60 ? 2 9 ? 6 25 ? 16 41 ? 6 41 ! 53 ? 70 84 ? 37 90 ? 56 58 ? 29 116 ? 117 124 ? 116 124 ! 116 ? 159 204 ? 47 235 ? 109 158 ? 46 171 ? 131 140 ? 10 85 ? 85 131 ! 131 ? 209 359 ? 137 139 ? 71 459 ? 289 474 ? 17...
result:
ok OK (15 test cases)
Test #8:
score: 0
Accepted
time: 82ms
memory: 13120kb
input:
600 2 2 0 0 0 2 3 3 2 0 0 0 0 2 4 3 0 0 0 0 0 1 2 0 0 5 0 0 3 1 4 5 0 0 0 0 1 0 6 3 5 1 4 0 0 6 0 0 0 0 0 0 0 7 3 7 0 0 0 0 2 5 0 0 1 4 0 0 0 1 8 0 0 3 7 1 0 2 5 6 8 0 0 0 0 0 0 0 2 2 9 9 8 0 0 7 2 0 0 0 0 0 0 0 0 4 5 3 6 0 1 2 10 3 6 8 0 4 2 5 7 0 0 10 9 0 0 0 0 0 0 0 0 0 1 0 11 0 0 4 9 5 8 6 3 0 0...
output:
? 2 1 ! 1 ? 2 3 ! 3 ? 1 2 ? 3 1 ! 3 ? 2 4 ? 5 3 ! 5 ? 1 4 ? 3 5 ! 3 ? 1 4 ? 3 7 ! 1 ? 2 5 ? 1 2 ? 7 2 ! 2 ? 1 3 ? 1 4 ? 5 8 ! 8 ? 1 4 ? 1 9 ? 10 6 ! 10 ? 2 3 ? 1 4 ? 7 6 ! 6 ? 1 5 ? 1 4 ? 10 4 ! 4 ? 13 8 ? 12 6 ? 11 13 ! 11 ? 14 10 ? 3 8 ? 1 9 ! 9 ? 8 14 ? 2 5 ? 6 11 ! 11 ? 7 15 ? 15 14 ? 1 3 ? 15 1...
result:
ok OK (600 test cases)
Test #9:
score: 0
Accepted
time: 141ms
memory: 24676kb
input:
2 99999 0 0 7999 97267 75750 37659 0 0 0 0 33761 92098 90707 18838 13602 27569 0 0 0 0 0 0 0 0 0 0 0 0 0 0 14586 86647 1519 23132 0 0 3430 14643 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 47066 36968 95308 38482 34100 25297 0 0 0 0 0 0 0 0 88902 58991 0 0 0 0 66315 68538 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...
output:
? 22163 50379 ? 11838 79924 ? 15463 18079 ? 41708 88632 ? 40612 63141 ? 24579 54568 ? 8545 83751 ? 58468 97010 ? 27367 63737 ? 41106 75498 ? 75918 88129 ? 21204 62215 ? 21024 45669 ? 65796 79889 ? 6771 73169 ! 73169 ? 42261 72481 ? 96633 84675 ? 2124 81852 ? 13836 79494 ? 24965 80643 ? 74893 78402 ?...
result:
ok OK (2 test cases)
Test #10:
score: 0
Accepted
time: 78ms
memory: 20392kb
input:
15 3 3 2 0 0 0 0 1 7 0 0 3 6 0 0 7 2 0 0 0 0 5 1 2 2 15 14 12 0 0 0 0 0 0 8 6 10 11 0 0 3 7 2 4 0 0 0 0 0 0 15 5 0 0 9 1 0 0 0 31 4 9 0 0 29 17 0 0 0 0 15 31 5 21 18 14 0 0 0 0 0 0 16 2 12 7 0 0 23 10 0 0 30 13 0 0 24 27 11 26 0 0 0 0 0 0 0 0 19 20 0 0 0 0 0 0 6 25 8 1 28 22 2 0 0 2 63 53 48 40 57 0...
output:
? 2 3 ! 1 ? 2 7 ? 1 5 ! 5 ? 5 15 ? 6 8 ? 10 11 ! 10 ? 17 29 ? 6 25 ? 15 31 ? 10 23 ! 23 ? 1 2 ? 48 53 ? 23 28 ? 8 34 ? 21 49 ! 34 ? 20 115 ? 68 71 ? 21 73 ? 26 61 ? 36 119 ? 12 23 ! 23 ? 70 140 ? 78 250 ? 4 223 ? 35 207 ? 170 189 ? 50 137 ? 69 160 ! 69 ? 60 121 ? 74 414 ? 249 474 ? 97 321 ? 119 279 ...
result:
ok OK (15 test cases)
Test #11:
score: 0
Accepted
time: 73ms
memory: 20268kb
input:
16 2 0 0 1 0 2 4 4 2 0 0 0 0 3 0 0 0 8 3 0 0 0 0 0 0 0 1 2 0 0 6 4 5 7 0 2 0 16 16 15 0 0 0 0 0 0 7 11 8 10 0 0 13 0 0 0 0 0 0 0 3 9 0 0 4 2 5 14 6 12 0 2 0 32 0 0 22 21 25 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 10 30 0 1 24 12 31 0 0 0 0 16 8 3 15 11 26 23 14 28 20 6 9 0 0 13 27 0 0 0 0 7 17 0 0 0 0 ...
output:
? 2 1 ! 1 ? 1 3 ? 2 1 ! 2 ? 5 7 ? 3 5 ? 2 5 ! 2 ? 1 6 ? 14 5 ? 7 11 ! 7 ? 32 3 ? 21 22 ? 14 23 ? 1 24 ! 14 ? 58 37 ? 19 40 ? 30 38 ? 23 45 ? 28 49 ! 49 ? 13 92 ? 57 92 ? 80 102 ? 22 52 ? 74 99 ? 15 61 ! 61 ? 3 245 ? 245 223 ? 131 150 ? 88 242 ? 76 184 ? 61 183 ? 174 203 ! 203 ? 39 511 ? 39 289 ? 33 ...
result:
ok OK (16 test cases)
Test #12:
score: 0
Accepted
time: 86ms
memory: 20372kb
input:
15 2 0 0 1 0 2 6 6 4 1 5 0 0 0 0 3 0 0 0 0 2 14 0 0 1 7 5 11 13 9 0 0 2 8 0 0 10 0 0 0 0 0 0 0 14 6 0 0 3 4 0 0 2 30 7 0 5 13 0 0 0 0 14 30 15 20 0 0 0 0 3 19 0 0 0 0 11 21 9 1 16 24 0 0 0 0 28 2 8 10 0 0 0 0 0 0 0 0 18 6 0 0 4 29 12 25 0 0 23 26 0 0 27 22 0 0 0 0 62 0 0 0 0 28 47 7 38 0 0 0 0 17 26...
output:
? 2 1 ! 1 ? 1 5 ? 4 6 ! 6 ? 12 4 ? 2 8 ? 1 7 ! 7 ? 17 23 ? 5 13 ? 14 30 ? 16 24 ! 16 ? 16 57 ? 36 43 ? 4 12 ? 15 22 ? 11 53 ! 53 ? 125 93 ? 17 123 ? 5 15 ? 10 84 ? 9 83 ? 65 101 ! 101 ? 241 224 ? 112 193 ? 88 124 ? 17 30 ? 154 233 ? 72 186 ? 20 96 ! 72 ? 284 376 ? 30 32 ? 98 159 ? 71 249 ? 154 315 ?...
result:
ok OK (15 test cases)
Test #13:
score: 0
Accepted
time: 102ms
memory: 13760kb
input:
600 2 0 0 1 0 2 3 0 0 1 3 0 0 2 4 2 4 0 0 0 0 3 0 0 0 5 2 5 0 0 0 0 0 0 4 3 1 0 6 6 4 0 0 0 0 3 0 2 1 0 0 0 0 7 0 0 0 0 2 4 5 6 0 0 0 0 1 3 2 0 8 2 7 0 0 6 0 0 0 8 3 0 0 4 5 0 0 2 2 0 9 5 2 0 0 7 4 6 8 0 0 0 0 0 0 9 1 0 0 2 0 2 10 3 5 10 7 0 0 0 0 6 2 0 0 4 0 9 1 0 0 0 0 2 0 2 11 9 6 4 1 0 0 0 0 11 ...
output:
? 2 1 ! 1 ? 1 3 ! 3 ? 1 3 ? 2 1 ! 2 ? 1 3 ? 4 5 ! 4 ? 4 5 ? 3 4 ! 3 ? 7 4 ? 5 6 ! 5 ? 3 7 ? 2 7 ? 4 7 ! 4 ? 1 4 ? 4 7 ? 6 4 ! 4 ? 1 2 ? 2 4 ? 10 2 ! 2 ? 10 1 ? 8 10 ? 7 10 ! 7 ? 4 7 ? 4 8 ? 5 4 ! 4 ? 2 4 ? 12 2 ? 7 12 ! 12 ? 8 12 ? 14 12 ? 2 12 ! 12 ? 14 9 ? 1 14 ? 11 15 ! 1 ? 1 6 ? 16 15 ? 14 15 ? ...
result:
ok OK (600 test cases)
Test #14:
score: 0
Accepted
time: 192ms
memory: 32716kb
input:
2 99999 96748 53986 34197 77552 29863 63559 79099 26449 45078 1051 0 0 27416 4135 0 0 38606 81189 93892 68603 48776 185 79602 18311 51243 83678 89044 40032 28883 35663 0 0 0 0 21603 15821 0 0 51448 75971 70275 8326 0 0 0 0 57049 72937 3297 94939 0 0 59258 39159 3205 34675 54876 24769 0 0 0 0 0 0 851...
output:
? 96970 71188 ? 87538 6820 ? 32876 59029 ? 46360 20365 ? 49372 9490 ? 51870 93805 ? 74496 96975 ? 90932 266 ? 99552 77780 ? 12293 24315 ? 92277 15485 ? 645 37634 ? 22336 24891 ? 61213 80836 ? 22336 61213 ? 54514 61213 ! 54514 ? 50499 6749 ? 17715 75012 ? 58179 31421 ? 20076 64768 ? 98628 64370 ? 631...
result:
ok OK (2 test cases)
Test #15:
score: 0
Accepted
time: 105ms
memory: 22900kb
input:
15 3 0 0 1 3 0 0 1 7 0 0 1 7 0 0 6 2 3 4 0 0 0 0 0 1 15 2 11 0 0 13 1 12 14 0 0 0 0 5 8 10 4 0 0 0 0 0 0 0 0 0 0 6 15 9 3 0 0 1 31 24 22 0 0 31 6 0 0 4 3 11 19 0 0 0 0 28 21 25 20 0 0 0 0 0 0 2 16 0 0 27 18 8 10 15 17 26 1 23 29 7 5 12 14 0 0 0 0 0 0 0 0 0 0 0 0 30 13 0 0 0 0 0 2 0 0 63 51 35 33 57 ...
output:
? 1 3 ! 2 ? 2 5 ? 1 7 ! 2 ? 15 4 ? 1 15 ? 2 11 ! 1 ? 14 1 ? 18 10 ? 29 10 ? 13 30 ! 13 ? 44 38 ? 1 42 ? 2 9 ? 34 2 ? 5 23 ! 23 ? 51 31 ? 96 62 ? 100 8 ? 52 89 ? 82 52 ? 57 70 ! 57 ? 124 122 ? 162 102 ? 84 231 ? 110 135 ? 223 147 ? 236 147 ? 80 201 ! 201 ? 266 322 ? 146 414 ? 72 335 ? 66 306 ? 76 89 ...
result:
ok OK (15 test cases)
Test #16:
score: 0
Accepted
time: 108ms
memory: 24020kb
input:
16 2 0 0 1 0 2 4 0 0 1 0 4 2 0 0 0 0 8 0 0 0 0 0 0 3 5 8 6 2 0 1 4 0 0 0 2 0 16 0 0 7 8 0 0 1 2 0 0 0 0 0 0 5 10 3 0 12 16 14 13 0 0 15 4 0 0 0 0 6 9 0 0 0 2 32 26 17 5 31 28 25 18 7 0 0 0 0 14 12 15 0 22 4 0 0 29 1 19 2 0 0 0 0 0 0 6 8 10 21 0 0 0 0 0 0 13 3 0 0 0 0 0 0 32 30 0 0 20 9 0 0 0 0 23 16...
output:
? 2 1 ! 1 ? 2 4 ? 1 2 ! 1 ? 4 6 ? 1 4 ? 3 4 ! 3 ? 2 10 ? 4 11 ? 4 7 ? 1 4 ! 4 ? 1 31 ? 3 30 ? 21 1 ? 21 28 ? 13 21 ! 13 ? 56 43 ? 25 19 ? 55 36 ? 51 19 ? 50 51 ? 21 51 ! 21 ? 38 43 ? 17 53 ? 117 69 ? 113 45 ? 123 117 ? 109 123 ? 102 123 ! 123 ? 133 170 ? 75 121 ? 14 197 ? 1 90 ? 3 103 ? 1 95 ? 40 95...
result:
ok OK (16 test cases)
Test #17:
score: 0
Accepted
time: 107ms
memory: 24144kb
input:
15 2 0 0 1 0 2 6 0 0 5 0 1 2 0 0 0 0 4 3 2 0 14 8 14 0 0 0 0 0 0 0 0 12 11 10 0 0 0 2 7 0 0 4 1 0 0 3 6 5 9 2 0 0 30 29 21 6 9 0 0 0 0 0 0 0 0 0 0 19 17 24 30 0 0 14 26 23 0 0 0 0 0 25 18 0 0 7 20 16 12 0 0 13 11 28 8 10 15 0 0 0 0 0 0 3 22 5 2 0 0 0 0 4 1 0 2 0 2 62 0 0 34 33 0 0 0 0 0 0 37 45 0 0 ...
output:
? 2 1 ! 1 ? 6 2 ? 5 2 ! 5 ? 14 11 ? 11 13 ? 4 11 ! 4 ? 20 8 ? 26 15 ? 12 15 ? 23 12 ! 12 ? 42 59 ? 12 31 ? 19 40 ? 12 40 ? 47 40 ! 40 ? 17 40 ? 69 77 ? 25 84 ? 59 90 ? 25 90 ? 31 25 ! 25 ? 189 90 ? 224 65 ? 73 185 ? 107 206 ? 11 94 ? 206 94 ? 21 206 ! 21 ? 60 192 ? 29 303 ? 190 312 ? 495 241 ? 180 2...
result:
ok OK (15 test cases)
Test #18:
score: 0
Accepted
time: 157ms
memory: 25056kb
input:
2 99999 0 0 88119 0 72740 0 6901 19702 0 0 10620 84889 0 0 9552 63972 45156 60768 9152 72379 0 0 59875 97207 48193 0 17282 54916 65927 27713 80083 15817 36966 75381 0 0 77279 56298 0 0 11554 61779 0 0 89976 0 65282 42151 95206 62876 97329 86772 0 0 0 0 0 0 11820 0 0 0 20432 0 50520 39907 0 0 46948 1...
output:
? 35226 52174 ? 16093 26122 ? 10853 11494 ? 11494 91694 ? 90037 73088 ? 21572 90037 ? 51091 91442 ? 7067 93596 ? 75096 14316 ? 75096 55875 ? 41734 42793 ? 59747 42793 ? 472 67072 ? 59747 64770 ! 92650 ? 36933 80592 ? 50906 68004 ? 73367 65219 ? 20489 33796 ? 74041 19704 ? 35779 74041 ? 35779 85560 ?...
result:
ok OK (2 test cases)
Test #19:
score: 0
Accepted
time: 256ms
memory: 14060kb
input:
100000 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0 0 1 0 2 0 0 0 1 0 2 0 0 0 1 0 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0 0 1 0 2 0 0 0 1 2 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0 0 1 2 2 0 0 0 1 2 2 0 0 0 1 2 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0 0 1 0 2 0 0 0 1 0 2 0 0 0 1 2 2 0 0 0 1 0 2 0 0...
output:
? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 2 ? 2 1 ! 2 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 1 ? 2 1 ! 1 ...
result:
ok OK (100000 test cases)
Extra Test:
score: 0
Extra Test Passed