#include <bits/stdc++.h>
#include "minerals.h"
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,popcnt,lzcnt")
#define fio ios_base::sync_with_stdio(0);cin.tie(0);
#define ll long long
#define en cin.close();return 0;
#define pb push_back
#define fi first//printf("%lli\n",cur);
#define se second//scanf("%lli",&n);
using namespace std;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
int n1, cur;
int q(int x)
{
return cur=Query(x);
}
void go(vector<int> &a, vector<int> &b, bool isa, bool isb)
{
random_shuffle(a.begin(),a.end());
random_shuffle(b.begin(),b.end());
assert(a.size()==b.size());
int n = a.size(), mid = min(n - 1, (int)ceil(0.5*n));
if(n==1)
Answer(a[0],b[0]);
else if(isb)
{
vector<int> la, ra, lb, rb;
for(int i = 0;i<n;i++)
{
if(i<mid)
{
if(!isa)
q(a[i]);
la.pb(a[i]);
}
else
{
if(isa)
q(a[i]);
ra.pb(a[i]);
}
}
for(int i = 0, lst=cur;i<n;i++)
{
int t = q(b[i]);
if(t==lst)
lb.pb(b[i]);
else
rb.pb(b[i]);
lst=t;
}
go(la,lb,1,0);
go(ra,rb,0,0);
}
else
{
vector<int> la, ra, lb, rb;
for(int i = 0;i<n;i++)
{
if(i<mid)
{
if(!isa)
q(a[i]);
la.pb(a[i]);
}
else
{
if(isa)
q(a[i]);
ra.pb(a[i]);
}
}
for(int i = 0, lst=cur;i<n;i++)
{
int t = q(b[i]);
if(t==lst)
lb.pb(b[i]);
else
rb.pb(b[i]);
lst=t;
}
go(la,lb,1,1);
go(ra,rb,0,1);
}
}
void Solve(int n)
{
n1=cur=n;
vector<int> a, b;
for(int i = 1, lst = 0;i<=2*n;i++)
{
int t = q(i);
if(t==lst)
b.pb(i);
else
a.pb(i);
lst=t;
}
srand(rng());
go(a,b,1,1);
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
1 ms |
336 KB |
Output is correct |
2 |
Correct |
2 ms |
336 KB |
Output is correct |
3 |
Correct |
4 ms |
464 KB |
Output is correct |
4 |
Correct |
8 ms |
624 KB |
Output is correct |
5 |
Correct |
14 ms |
1108 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
15 |
Correct |
38 ms |
2552 KB |
Output is correct |
16 |
Correct |
39 ms |
2512 KB |
Output is correct |
17 |
Correct |
38 ms |
2560 KB |
Output is correct |
18 |
Correct |
38 ms |
2416 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
15 |
Correct |
38 ms |
2552 KB |
Output is correct |
16 |
Correct |
39 ms |
2512 KB |
Output is correct |
17 |
Correct |
38 ms |
2560 KB |
Output is correct |
18 |
Correct |
38 ms |
2416 KB |
Output is correct |
19 |
Correct |
46 ms |
2640 KB |
Output is correct |
20 |
Correct |
40 ms |
2632 KB |
Output is correct |
21 |
Correct |
44 ms |
2748 KB |
Output is correct |
22 |
Correct |
43 ms |
2448 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
15 |
Correct |
38 ms |
2552 KB |
Output is correct |
16 |
Correct |
39 ms |
2512 KB |
Output is correct |
17 |
Correct |
38 ms |
2560 KB |
Output is correct |
18 |
Correct |
38 ms |
2416 KB |
Output is correct |
19 |
Correct |
46 ms |
2640 KB |
Output is correct |
20 |
Correct |
40 ms |
2632 KB |
Output is correct |
21 |
Correct |
44 ms |
2748 KB |
Output is correct |
22 |
Correct |
43 ms |
2448 KB |
Output is correct |
23 |
Correct |
44 ms |
2668 KB |
Output is correct |
24 |
Correct |
41 ms |
2664 KB |
Output is correct |
25 |
Correct |
40 ms |
2660 KB |
Output is correct |
26 |
Correct |
40 ms |
2472 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
15 |
Correct |
38 ms |
2552 KB |
Output is correct |
16 |
Correct |
39 ms |
2512 KB |
Output is correct |
17 |
Correct |
38 ms |
2560 KB |
Output is correct |
18 |
Correct |
38 ms |
2416 KB |
Output is correct |
19 |
Correct |
46 ms |
2640 KB |
Output is correct |
20 |
Correct |
40 ms |
2632 KB |
Output is correct |
21 |
Correct |
44 ms |
2748 KB |
Output is correct |
22 |
Correct |
43 ms |
2448 KB |
Output is correct |
23 |
Correct |
44 ms |
2668 KB |
Output is correct |
24 |
Correct |
41 ms |
2664 KB |
Output is correct |
25 |
Correct |
40 ms |
2660 KB |
Output is correct |
26 |
Correct |
40 ms |
2472 KB |
Output is correct |
27 |
Incorrect |
42 ms |
2704 KB |
Wrong Answer [2] |
28 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
15 |
Correct |
38 ms |
2552 KB |
Output is correct |
16 |
Correct |
39 ms |
2512 KB |
Output is correct |
17 |
Correct |
38 ms |
2560 KB |
Output is correct |
18 |
Correct |
38 ms |
2416 KB |
Output is correct |
19 |
Correct |
46 ms |
2640 KB |
Output is correct |
20 |
Correct |
40 ms |
2632 KB |
Output is correct |
21 |
Correct |
44 ms |
2748 KB |
Output is correct |
22 |
Correct |
43 ms |
2448 KB |
Output is correct |
23 |
Correct |
44 ms |
2668 KB |
Output is correct |
24 |
Correct |
41 ms |
2664 KB |
Output is correct |
25 |
Correct |
40 ms |
2660 KB |
Output is correct |
26 |
Correct |
40 ms |
2472 KB |
Output is correct |
27 |
Incorrect |
42 ms |
2704 KB |
Wrong Answer [2] |
28 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
208 KB |
Output is correct |
2 |
Correct |
0 ms |
208 KB |
Output is correct |
3 |
Correct |
1 ms |
208 KB |
Output is correct |
4 |
Correct |
1 ms |
272 KB |
Output is correct |
5 |
Correct |
1 ms |
336 KB |
Output is correct |
6 |
Correct |
2 ms |
336 KB |
Output is correct |
7 |
Correct |
4 ms |
464 KB |
Output is correct |
8 |
Correct |
8 ms |
624 KB |
Output is correct |
9 |
Correct |
14 ms |
1108 KB |
Output is correct |
10 |
Correct |
1 ms |
336 KB |
Output is correct |
11 |
Correct |
9 ms |
848 KB |
Output is correct |
12 |
Correct |
14 ms |
1232 KB |
Output is correct |
13 |
Correct |
14 ms |
1104 KB |
Output is correct |
14 |
Correct |
14 ms |
1112 KB |
Output is correct |
15 |
Correct |
38 ms |
2552 KB |
Output is correct |
16 |
Correct |
39 ms |
2512 KB |
Output is correct |
17 |
Correct |
38 ms |
2560 KB |
Output is correct |
18 |
Correct |
38 ms |
2416 KB |
Output is correct |
19 |
Correct |
46 ms |
2640 KB |
Output is correct |
20 |
Correct |
40 ms |
2632 KB |
Output is correct |
21 |
Correct |
44 ms |
2748 KB |
Output is correct |
22 |
Correct |
43 ms |
2448 KB |
Output is correct |
23 |
Correct |
44 ms |
2668 KB |
Output is correct |
24 |
Correct |
41 ms |
2664 KB |
Output is correct |
25 |
Correct |
40 ms |
2660 KB |
Output is correct |
26 |
Correct |
40 ms |
2472 KB |
Output is correct |
27 |
Incorrect |
42 ms |
2704 KB |
Wrong Answer [2] |
28 |
Halted |
0 ms |
0 KB |
- |