//#pragma optimization_level 3
//#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math,O3")
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
#include<bits/stdc++.h>
#include"library.h"
/*
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <ext/pb_ds/detail/standard_policies.hpp>
using namespace __gnu_pbds;
typedef tree<int,null_type,less<int>,rb_tree_tag,tree_order_statistics_node_update>ordset;
*/
#define fr first
#define sc second
#define vec vector
#define pb push_back
#define pii pair<int, int>
#define forn(x,y) for(int x = 1 ; x <= (int)y ; ++x)
#define all(x) (x).begin(),(x).end()
#define fast cin.tie(0);cout.tie(0);cin.sync_with_stdio(0);cout.sync_with_stdio(0);
using namespace std;
typedef long long ll;
typedef unsigned int uint;
typedef complex<int> point;
const int nmax = 2005;
const ll linf = 1e18;
const ll mod = 998244353;
const int inf = INT_MAX;
vec < int > A,B;
void Solve(int n){
A.resize(n);
if(n == 1){Answer({1});return;}
for(int i = 0 ; i < n; i++){
A[i] = 1;
}
int p = 0;
A[p] = 0;
while(Query(A) > 1){
A[p] = 1;
p++;
A[p] = 0;
}
p++;
vec < int > rez;
rez.pb(p);
set < int > avb;
forn(i,n)if(i!=p)avb.insert(i);
while( avb.size() > 1){
B.clear();
for(int i : avb){
B.pb(i);
}
int l = 0, r = B.size() -1;
while( l < r){
int mid = (l+r)/2;
for(int i = 0 ; i < n; i++)A[i] = 0;
for(int i = l; i <= mid ; i++) A[B[i]-1] = 1;
int r1 = Query(A);
A[p-1] = 1;
int r2 = Query(A);
if(r1 < r2){
l = mid+1;
}else{
r = mid;
}
}
avb.erase(B[l]);
rez.pb(B[l]);
p = B[l];
}
for(int i : avb)rez.pb(i);
Answer(rez);
}
/*int main(){
fast;
}*/
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
39 ms |
384 KB |
# of queries: 2387 |
2 |
Correct |
48 ms |
384 KB |
# of queries: 2433 |
3 |
Correct |
44 ms |
256 KB |
# of queries: 2638 |
4 |
Correct |
41 ms |
256 KB |
# of queries: 2593 |
5 |
Correct |
43 ms |
384 KB |
# of queries: 2504 |
6 |
Correct |
42 ms |
384 KB |
# of queries: 2553 |
7 |
Correct |
42 ms |
384 KB |
# of queries: 2568 |
8 |
Correct |
40 ms |
256 KB |
# of queries: 2402 |
9 |
Correct |
41 ms |
384 KB |
# of queries: 2512 |
10 |
Correct |
22 ms |
256 KB |
# of queries: 1478 |
11 |
Correct |
5 ms |
384 KB |
# of queries: 0 |
12 |
Correct |
4 ms |
256 KB |
# of queries: 1 |
13 |
Correct |
4 ms |
256 KB |
# of queries: 4 |
14 |
Correct |
5 ms |
256 KB |
# of queries: 7 |
15 |
Correct |
6 ms |
256 KB |
# of queries: 73 |
16 |
Correct |
7 ms |
256 KB |
# of queries: 187 |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
39 ms |
384 KB |
# of queries: 2387 |
2 |
Correct |
48 ms |
384 KB |
# of queries: 2433 |
3 |
Correct |
44 ms |
256 KB |
# of queries: 2638 |
4 |
Correct |
41 ms |
256 KB |
# of queries: 2593 |
5 |
Correct |
43 ms |
384 KB |
# of queries: 2504 |
6 |
Correct |
42 ms |
384 KB |
# of queries: 2553 |
7 |
Correct |
42 ms |
384 KB |
# of queries: 2568 |
8 |
Correct |
40 ms |
256 KB |
# of queries: 2402 |
9 |
Correct |
41 ms |
384 KB |
# of queries: 2512 |
10 |
Correct |
22 ms |
256 KB |
# of queries: 1478 |
11 |
Correct |
5 ms |
384 KB |
# of queries: 0 |
12 |
Correct |
4 ms |
256 KB |
# of queries: 1 |
13 |
Correct |
4 ms |
256 KB |
# of queries: 4 |
14 |
Correct |
5 ms |
256 KB |
# of queries: 7 |
15 |
Correct |
6 ms |
256 KB |
# of queries: 73 |
16 |
Correct |
7 ms |
256 KB |
# of queries: 187 |
17 |
Correct |
426 ms |
552 KB |
# of queries: 18008 |
18 |
Correct |
391 ms |
496 KB |
# of queries: 17231 |
19 |
Correct |
465 ms |
432 KB |
# of queries: 17451 |
20 |
Correct |
372 ms |
632 KB |
# of queries: 16277 |
21 |
Correct |
363 ms |
504 KB |
# of queries: 15362 |
22 |
Correct |
425 ms |
556 KB |
# of queries: 17617 |
23 |
Correct |
420 ms |
464 KB |
# of queries: 17170 |
24 |
Correct |
146 ms |
384 KB |
# of queries: 7885 |
25 |
Correct |
417 ms |
608 KB |
# of queries: 17118 |
26 |
Correct |
370 ms |
504 KB |
# of queries: 15989 |
27 |
Correct |
150 ms |
384 KB |
# of queries: 7994 |
28 |
Correct |
440 ms |
504 KB |
# of queries: 17935 |
29 |
Correct |
436 ms |
504 KB |
# of queries: 17915 |
30 |
Correct |
432 ms |
504 KB |
# of queries: 17935 |