QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#750230 | #9570. Binary Tree | rea_lity | AC ✓ | 229ms | 27288kb | C++23 | 7.4kb | 2024-11-15 13:33:48 | 2024-11-15 13:33:49 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
#define int long long
#define INF 0x3f3f3f3f
#define LLINF 0x3f3f3f3f3f3f3f3f
#define all(x) (x).begin(),(x).end()
#define l first
#define r second
#define MYDEBUG1 //note: close the debug before submit
#ifdef MYDEBUG
#define Debug(X) cout << #X << ": " << X << ";" << endl
template <typename T>
void debug(vector<T>&nums,int len){
if(nums.size() + 1 < len)cout << "Overflow: size of anrry is <" << nums.size() << ">,but len is <" << len << ">" << endl;
else for(int i = 0;i <= len;i++)cout << nums[i] << " \n"[i == len];
}
#else
#define Debug(X)
template <typename T>
void debug(vector<T>&nums,int len){}
#endif
const int N = 2e5 + 10;
vector<int>mp[N],siz(N),wt(N),tmp[N];
int n,rt,isRes,m,f[N];
void getCentroid(int u, int fa) {
siz[u] = 1;
wt[u] = 0;
for (int v : mp[u]) {
if (v != fa) {
f[v] = u;
getCentroid(v, u);
siz[u] += siz[v];
wt[u] = max(wt[u], siz[v]);
}
}
wt[u] = max(wt[u], m - siz[u]);
if (rt == 0 || wt[u] < wt[rt]) rt = u;
}
void upmp(int u,int fa){
for(int v : mp[u]){
if(v == fa) continue;
tmp[u].push_back(v);
tmp[v].push_back(u);
upmp(v,u);
}
}
int cnt = 0;
void dfs(int x){
if(isRes)return;
rt = 0;
getCentroid(x,0);
/* cout << "ZH" << rt << endl;
for(int i = 1;i <= n;i++){
cout << i << "->";
for(int j : mp[i]){
cout << j << " ";
}cout << endl;
cout.flush();
} */
if(mp[rt].size() == 0){
cout << "! " << rt << endl;
cout.flush();
isRes = 1;
return;
}
else if(mp[rt].size() == 1){
cout << "? " << mp[rt][0] << " " << rt << endl;
cout.flush();
int t;cin >> t;
cout << "! " << (t == 0 ? mp[rt][0] : rt) << endl;
cout.flush();
isRes = 1;
return;
}
else if(mp[rt].size() == 2){
cout << "? " << mp[rt][0] << " " << mp[rt][1] << endl;
cout.flush();
int t;cin >> t;
if(t == 1){
cout << "! " << rt << endl;
cout.flush();
isRes = 1;
return;
}
int tx = t == 0 ? mp[rt][0] : mp[rt][1];
cout.flush();
for(int i = 1;i <= n;i++)tmp[i].clear();
upmp(tx,rt);m = 0;
for(int i = 1;i <= n;i++){
mp[i].clear();
mp[i] = tmp[i];
if(tmp[i].size())m ++;
}
dfs(tx);
}
else if(mp[rt].size() == 3){
vector<pair<int,int>>vv;
for(int i = 0;i < 3;i++){
int xx = (f[mp[rt][i]] == rt ? siz[mp[rt][i]] : m - siz[rt]);
vv.push_back({xx,i});
}
sort(all(vv),greater<pair<int,int>>());
int a = mp[rt][vv[0].r],b = mp[rt][vv[1].r];
cout << "? " << a << " " << b << endl;
cout.flush();
int t,lt,tx;cin >> t;
if(t == 0){
lt = a;
tx = lt;
}
else if(t == 1){
lt = mp[rt][vv[2].r];
tx = rt;
}
else lt = b,tx = lt;
for(int i = 1;i <= n;i++)tmp[i].clear();
if(t == 1)tmp[lt].push_back(rt);tmp[rt].push_back(lt);
upmp(lt,rt);m = 0;
for(int i = 1;i <= n;i++){
mp[i].clear();
mp[i] = tmp[i];
if(tmp[i].size())m ++;
}
dfs(tx);
}
}
/*
1
7
2 3
4 5
6 7
0 0
0 0
0 0
0 0
*/
void solve()
{
cin >> n;m = n;
for(int i = 1;i <= n;i++){
mp[i].clear();
tmp[i].clear();
}
for(int i = 1;i <= n;i++){
int a,b;cin >> a >> b;
if(a)mp[i].push_back(a),mp[a].push_back(i);
if(b)mp[i].push_back(b),mp[b].push_back(i);
}isRes = 0;
cnt = 0;
dfs(1);
}
signed main()
{
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
int T = 1;
cin >> T;
while (T--)solve();
return 0;
}
/*
_____ _____ _____ _____ _____ _____ _____
/\ \ /\ \ /\ \ /\ \ /\ \ /\ \ |\ \
/::\ \ /::\ \ /::\ \ /::\____\ /::\ \ /::\ \ |:\____\
/::::\ \ /::::\ \ /::::\ \ /:::/ / \:::\ \ \:::\ \ |::| |
/::::::\ \ /::::::\ \ /::::::\ \ /:::/ / \:::\ \ \:::\ \ |::| |
/:::/\:::\ \ /:::/\:::\ \ /:::/\:::\ \ /:::/ / \:::\ \ \:::\ \ |::| |
/:::/__\:::\ \ /:::/__\:::\ \ /:::/__\:::\ \ /:::/ / \:::\ \ \:::\ \ |::| |
/::::\ \:::\ \ /::::\ \:::\ \ /::::\ \:::\ \ /:::/ / /::::\ \ /::::\ \ |::| |
/::::::\ \:::\ \ /::::::\ \:::\ \ /::::::\ \:::\ \ /:::/ / ____ /::::::\ \ /::::::\ \ |::|___|______
/:::/\:::\ \:::\____\ /:::/\:::\ \:::\ \ /:::/\:::\ \:::\ \ /:::/ / /\ \ /:::/\:::\ \ /:::/\:::\ \ /::::::::\ \
/:::/ \:::\ \:::| |/:::/__\:::\ \:::\____\/:::/ \:::\ \:::\____\/:::/____/ /::\ \/:::/ \:::\____\ /:::/ \:::\____\ /::::::::::\____\
\::/ |::::\ /:::|____|\:::\ \:::\ \::/ /\::/ \:::\ /:::/ /\:::\ \ \:::\ /:::/ \::/ / /:::/ \::/ / /:::/~~~~/~~
\/____|:::::\/:::/ / \:::\ \:::\ \/____/ \/____/ \:::\/:::/ / \:::\ \ \:::\/:::/ / \/____/ /:::/ / \/____/ /:::/ /
|:::::::::/ / \:::\ \:::\ \ \::::::/ / \:::\ \ \::::::/ / /:::/ / /:::/ /
|::|\::::/ / \:::\ \:::\____\ \::::/ / \:::\ \ \::::/____/ /:::/ / /:::/ /
|::| \::/____/ \:::\ \::/ / /:::/ / \:::\ \ \:::\ \ \::/ / \::/ /
|::| ~| \:::\ \/____/ /:::/ / \:::\ \ \:::\ \ \/____/ \/____/
|::| | \:::\ \ /:::/ / \:::\ \ \:::\ \
\::| | \:::\____\ /:::/ / \:::\____\ \:::\____\
\:| | \::/ / \::/ / \::/ / \::/ /
\|___| \/____/ \/____/ \/____/ \/____/
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 3ms
memory: 8092kb
input:
2 5 0 0 1 5 2 4 0 0 0 0 1 0 2 0 2 0 0 2
output:
? 3 5 ? 2 1 ! 2 ? 1 2 ! 2
result:
ok OK (2 test cases)
Test #2:
score: 0
Accepted
time: 52ms
memory: 11424kb
input:
5555 8 2 0 8 6 0 0 3 0 0 0 7 0 0 0 5 4 0 2 0 8 0 0 1 4 2 0 0 0 7 8 0 0 3 0 6 0 2 1 2 8 5 8 0 0 1 7 0 0 0 0 4 2 0 0 6 0 0 0 0 5 4 5 3 1 0 0 0 0 0 0 1 0 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 2 0 5 5 0 0 0 0 0 3 0 2 4 1 2 3 3 0 1 0 0 0 1 2 2 0 0 0 2 3 2 3 0 0 0 0 2 10 2 8 9 7 0 0 ...
output:
? 2 4 ? 1 6 ? 6 7 ! 6 ? 5 3 ? 3 4 ? 2 1 ! 1 ? 1 6 ? 1 7 ? 1 5 ! 1 ? 2 5 ? 1 4 ! 1 ? 5 7 ? 1 4 ! 1 ? 5 1 ? 1 3 ! 1 ? 1 4 ? 5 2 ! 2 ? 3 2 ! 1 ? 1 2 ! 2 ? 2 3 ! 3 ? 2 6 ? 1 9 ? 9 10 ! 9 ? 1 2 ! 1 ? 5 9 ? 8 4 ? 3 5 ! 5 ? 5 8 ? 5 7 ? 3 1 ! 3 ? 9 3 ? 9 7 ? 2 1 ! 1 ? 1 2 ! 2 ? 4 3 ? 1 7 ! 7 ? 4 5 ? 4 8 ? 8...
result:
ok OK (5555 test cases)
Test #3:
score: 0
Accepted
time: 53ms
memory: 10420kb
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 2 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 0 0 9 7 0 4 0 2 0 1 0 0 0 8 0 9 0 5 0 6 0 2 0 2 10 9 0 6 0 8 0 7 0 0 0 10 0 2 0 4 0 5 0 1 0 0 0 2 11 2 0 10 0 6 0 9 0 0 ...
output:
? 1 2 ! 2 ? 1 3 ! 3 ? 1 3 ? 1 2 ! 1 ? 4 3 ? 3 5 ! 3 ? 2 1 ? 1 5 ! 1 ? 2 6 ? 2 4 ! 5 ? 1 6 ? 7 2 ? 7 1 ! 7 ? 1 9 ? 6 5 ? 6 9 ! 9 ? 6 7 ? 10 9 ? 10 6 ! 6 ? 2 9 ? 4 8 ? 8 7 ! 7 ? 2 9 ? 3 12 ? 3 9 ! 3 ? 2 3 ? 13 6 ? 13 2 ! 9 ? 4 13 ? 1 6 ? 1 4 ! 4 ? 2 14 ? 15 8 ? 8 13 ! 13 ? 1 15 ? 16 11 ? 6 1 ? 6 16 ! ...
result:
ok OK (600 test cases)
Test #4:
score: 0
Accepted
time: 131ms
memory: 27288kb
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:
? 70790 43991 ? 98065 36882 ? 89400 44312 ? 52881 29266 ? 79632 4792 ? 42596 60575 ? 48047 49462 ? 35653 89053 ? 97401 5200 ? 88604 36002 ? 39621 70194 ? 66655 42334 ? 88973 98852 ? 44977 99415 ? 35161 43955 ? 35161 44977 ! 44977 ? 46352 44110 ? 63067 47168 ? 38328 51576 ? 75910 60860 ? 42451 28720 ...
result:
ok OK (2 test cases)
Test #5:
score: 0
Accepted
time: 64ms
memory: 17392kb
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 ? 5 1 ? 1 4 ! 4 ? 6 9 ? 3 7 ? 3 6 ! 3 ? 13 29 ? 17 18 ? 1 24 ? 1 17 ! 17 ? 37 8 ? 30 14 ? 55 56 ? 19 22 ? 22 18 ! 6 ? 36 89 ? 110 96 ? 1 81 ? 118 10 ? 70 75 ? 70 118 ! 118 ? 64 233 ? 148 51 ? 1 176 ? 78 126 ? 46 136 ? 77 214 ? 77 46 ! 77 ? 439 48 ? 457 144 ? 4 228 ? 236 472 ? 306 350 ? 126...
result:
ok OK (15 test cases)
Test #6:
score: 0
Accepted
time: 83ms
memory: 19608kb
input:
16 2 2 0 0 0 2 4 4 0 3 0 1 0 0 0 2 2 8 5 0 0 0 4 0 8 0 2 0 3 0 6 0 1 0 2 0 0 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 2 0 0 2 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:
? 1 2 ! 2 ? 2 1 ? 1 4 ! 4 ? 3 8 ? 1 2 ? 1 8 ! 1 ? 4 3 ? 5 15 ? 2 3 ? 2 5 ! 5 ? 12 30 ? 17 4 ? 10 23 ? 9 17 ? 9 10 ! 9 ? 3 60 ? 41 49 ? 37 31 ? 40 35 ? 62 37 ? 62 40 ! 62 ? 57 124 ? 48 58 ? 69 39 ? 31 37 ? 76 125 ? 14 31 ? 14 76 ! 14 ? 90 113 ? 91 222 ? 57 148 ? 68 231 ? 255 112 ? 135 81 ? 251 255 ? ...
result:
ok OK (16 test cases)
Test #7:
score: 0
Accepted
time: 79ms
memory: 19764kb
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:
? 1 2 ! 2 ? 1 3 ? 1 4 ! 4 ? 5 14 ? 12 6 ? 12 14 ! 9 ? 16 21 ? 8 5 ? 6 3 ? 6 8 ! 8 ? 10 60 ? 9 2 ? 36 34 ? 24 47 ? 47 9 ! 52 ? 84 70 ? 37 90 ? 56 58 ? 116 29 ? 80 31 ? 31 115 ! 31 ? 204 159 ? 235 47 ? 169 248 ? 1 84 ? 162 87 ? 249 222 ? 222 1 ! 1 ? 359 209 ? 137 139 ? 71 459 ? 474 289 ? 156 36 ? 246 ...
result:
ok OK (15 test cases)
Test #8:
score: 0
Accepted
time: 40ms
memory: 10260kb
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 0 0 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 2 11 0 0 4 9 5 8 6 3 0 0...
output:
? 1 2 ! 2 ? 3 2 ! 2 ? 1 2 ? 1 3 ! 1 ? 2 5 ? 3 4 ! 3 ? 1 4 ? 3 5 ! 3 ? 1 4 ? 3 7 ! 1 ? 2 5 ? 2 1 ? 2 7 ! 2 ? 1 3 ? 1 5 ? 8 4 ! 4 ? 1 4 ? 1 9 ? 6 10 ! 10 ? 2 3 ? 2 11 ? 9 10 ! 10 ? 1 5 ? 4 1 ? 7 8 ! 8 ? 13 8 ? 9 13 ? 6 5 ! 9 ? 14 10 ? 14 3 ? 11 7 ! 7 ? 8 14 ? 2 5 ? 11 6 ! 6 ? 15 7 ? 15 14 ? 15 3 ? 11 ...
result:
ok OK (600 test cases)
Test #9:
score: 0
Accepted
time: 108ms
memory: 19392kb
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:
? 50379 22163 ? 79924 11838 ? 15463 18079 ? 41708 88632 ? 63141 40612 ? 77076 11131 ? 14759 10024 ? 27083 36468 ? 4967 73142 ? 14557 82947 ? 57448 44019 ? 4935 24134 ? 67186 46487 ? 15825 92043 ? 93901 17721 ! 17721 ? 72481 42261 ? 96633 84675 ? 81852 2124 ? 64228 84822 ? 19229 57178 ? 58509 46889 ?...
result:
ok OK (2 test cases)
Test #10:
score: 0
Accepted
time: 59ms
memory: 14904kb
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:
? 3 2 ! 1 ? 7 2 ? 3 6 ! 6 ? 15 5 ? 9 1 ? 2 4 ! 2 ? 29 17 ? 30 13 ? 8 1 ? 18 14 ! 14 ? 1 2 ? 53 48 ? 63 19 ? 30 56 ? 55 59 ! 56 ? 20 115 ? 71 68 ? 67 3 ? 18 16 ? 123 55 ? 117 104 ! 104 ? 70 140 ? 78 250 ? 223 4 ? 220 204 ? 67 144 ? 75 15 ? 242 199 ! 242 ? 60 121 ? 414 74 ? 99 184 ? 301 403 ? 425 477 ...
result:
ok OK (15 test cases)
Test #11:
score: 0
Accepted
time: 56ms
memory: 16632kb
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 0 2 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 0 1 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:
? 1 2 ! 2 ? 1 3 ? 1 2 ! 1 ? 5 7 ? 5 3 ? 5 2 ! 2 ? 1 6 ? 14 5 ? 4 2 ! 14 ? 32 3 ? 32 21 ? 20 28 ? 11 26 ! 11 ? 37 58 ? 37 40 ? 55 63 ? 5 50 ? 53 62 ! 62 ? 92 13 ? 92 57 ? 92 102 ? 48 108 ? 8 106 ? 4 97 ! 97 ? 245 3 ? 245 223 ? 245 131 ? 34 193 ? 164 71 ? 230 148 ? 213 212 ! 213 ? 39 511 ? 39 289 ? 33...
result:
ok OK (16 test cases)
Test #12:
score: 0
Accepted
time: 57ms
memory: 14808kb
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 1 1 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 1 0 0 62 0 0 0 0 28 47 7 38 0 0 0 0 17 26...
output:
? 1 2 ! 2 ? 1 5 ? 6 4 ! 4 ? 12 4 ? 12 2 ? 6 10 ! 8 ? 17 26 ? 17 5 ? 9 1 ? 3 19 ! 3 ? 16 57 ? 36 43 ? 13 20 ? 40 29 ? 14 49 ! 49 ? 125 93 ? 125 17 ? 19 62 ? 110 105 ? 72 31 ? 103 37 ! 37 ? 241 224 ? 241 112 ? 4 235 ? 37 94 ? 50 190 ? 23 115 ? 181 109 ! 181 ? 284 376 ? 30 32 ? 22 406 ? 231 379 ? 464 1...
result:
ok OK (15 test cases)
Test #13:
score: 0
Accepted
time: 37ms
memory: 8672kb
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 0 1 8 2 7 0 0 6 0 0 0 8 3 0 0 4 5 0 0 0 0 0 9 5 2 0 0 7 4 6 8 0 0 0 0 0 0 9 1 0 0 0 0 2 10 3 5 10 7 0 0 0 0 6 2 0 0 4 0 9 1 0 0 0 0 2 2 2 11 9 6 4 1 0 0 0 0 11 ...
output:
? 1 2 ! 2 ? 1 3 ! 3 ? 1 3 ? 1 2 ! 1 ? 1 3 ? 5 4 ! 5 ? 5 4 ? 2 5 ! 2 ? 4 7 ? 5 6 ! 4 ? 7 3 ? 1 4 ? 1 2 ! 1 ? 4 1 ? 3 6 ? 3 7 ! 7 ? 2 1 ? 3 8 ? 8 9 ! 9 ? 10 1 ? 10 8 ? 5 11 ! 11 ? 4 7 ? 4 8 ? 1 6 ! 1 ? 2 4 ? 2 12 ? 7 12 ! 7 ? 12 8 ? 12 14 ? 13 14 ! 14 ? 14 9 ? 14 1 ? 11 15 ! 15 ? 1 6 ? 3 1 ? 11 16 ? 1...
result:
ok OK (600 test cases)
Test #14:
score: 0
Accepted
time: 114ms
memory: 24588kb
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:
? 71188 96970 ? 87538 6820 ? 59029 32876 ? 46360 20365 ? 49372 9490 ? 17131 97012 ? 63260 47373 ? 50792 54267 ? 90948 40354 ? 57900 28477 ? 45466 57947 ? 49953 61749 ? 74237 46253 ? 80813 36006 ? 80813 50792 ? 66247 50792 ! 66247 ? 50499 6749 ? 42167 37781 ? 96466 36486 ? 37783 33496 ? 28303 48920 ?...
result:
ok OK (2 test cases)
Test #15:
score: 0
Accepted
time: 67ms
memory: 18104kb
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 2 0 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 0 0 0 63 51 35 33 57 ...
output:
? 1 3 ! 2 ? 2 5 ? 1 7 ! 2 ? 15 4 ? 15 1 ? 2 11 ! 2 ? 14 1 ? 10 18 ? 29 10 ? 30 13 ! 30 ? 38 44 ? 42 1 ? 2 9 ? 34 2 ? 5 23 ! 34 ? 51 31 ? 96 62 ? 100 8 ? 52 89 ? 82 52 ? 70 57 ! 57 ? 124 122 ? 162 102 ? 84 231 ? 110 135 ? 147 223 ? 236 147 ? 201 80 ! 236 ? 322 266 ? 146 414 ? 72 335 ? 66 306 ? 89 76 ...
result:
ok OK (15 test cases)
Test #16:
score: 0
Accepted
time: 55ms
memory: 19228kb
input:
16 2 0 0 1 0 2 4 0 0 1 0 4 2 0 0 2 2 8 0 0 0 0 0 0 3 5 8 6 2 0 1 4 0 0 0 2 2 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 2 0 0 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:
? 1 2 ! 2 ? 4 2 ? 2 1 ! 1 ? 4 6 ? 3 7 ? 7 1 ! 1 ? 2 10 ? 2 13 ? 11 15 ? 11 14 ! 11 ? 1 31 ? 25 21 ? 16 25 ? 6 8 ? 8 15 ! 8 ? 56 43 ? 11 18 ? 52 47 ? 17 52 ? 44 1 ? 1 38 ! 1 ? 38 43 ? 66 19 ? 105 12 ? 23 39 ? 9 23 ? 74 116 ? 116 32 ! 32 ? 133 170 ? 44 184 ? 43 58 ? 206 235 ? 27 19 ? 221 27 ? 181 168 ...
result:
ok OK (16 test cases)
Test #17:
score: 0
Accepted
time: 71ms
memory: 18708kb
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:
? 1 2 ! 2 ? 6 2 ? 5 2 ! 5 ? 11 14 ? 14 7 ? 5 14 ! 5 ? 20 8 ? 26 15 ? 15 12 ? 25 15 ! 15 ? 59 42 ? 2 15 ? 51 44 ? 44 42 ? 3 42 ! 42 ? 17 40 ? 69 77 ? 25 84 ? 90 59 ? 59 69 ? 114 59 ! 59 ? 189 90 ? 65 224 ? 229 10 ? 57 98 ? 16 15 ? 15 67 ? 13 15 ! 13 ? 192 60 ? 44 285 ? 25 327 ? 246 414 ? 484 154 ? 15...
result:
ok OK (15 test cases)
Test #18:
score: 0
Accepted
time: 125ms
memory: 19780kb
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:
? 52174 35226 ? 26122 16093 ? 11494 10853 ? 11494 91694 ? 90037 73088 ? 90037 21572 ? 51091 91442 ? 7067 93596 ? 75096 14316 ? 75096 55875 ? 42793 41734 ? 59747 42793 ? 67072 472 ? 64770 59747 ! 92650 ? 80592 36933 ? 50906 68004 ? 73367 65219 ? 20489 33796 ? 74041 19704 ? 35779 74041 ? 35779 85560 ?...
result:
ok OK (2 test cases)
Test #19:
score: 0
Accepted
time: 229ms
memory: 10152kb
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:
? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 1 ? 1 2 ! 1 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 2 ? 1 2 ! 2 ...
result:
ok OK (100000 test cases)
Extra Test:
score: 0
Extra Test Passed