#include <bits/stdc++.h>
using namespace std;
#define int long long
#define pi pair<int, int>
#define pii pair<int, pi>
#define fi first
#define se second
#ifdef _WIN32
#define getchar_unlocked _getchar_nolock
#endif
mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
int qry(vector <int> &a){
cout << (int)a.size() << ' ';
for(auto i : a)cout << i << ' ';
cout << endl;
int ret; cin >> ret;
return ret;
}
int A[200005];
void solve(){
int n; cin >> n;
int cnt = 0;
for(int i=1;i<=n;i++){
int lo = 1, hi = i - 1, ans = 0;
while(lo <= hi){
int mid = (lo + hi) >> 1;
vector <int> x, y;
for(int j=mid;j<i;j++)x.push_back(j);
y = x;
y.push_back(i);
if(qry(x) == qry(y))ans = mid, lo = mid + 1;
else hi = mid - 1;
}
if(!ans)A[i] = ++cnt;
else A[i] = A[ans];
}
cout << "0 ";
for(int i=1;i<=n;i++)cout << A[i] << ' ';
cout << endl;
}
main(){
ios::sync_with_stdio(0);cin.tie(0);
int tc = 1;
//cin >> tc;
for(int tc1=1;tc1<=tc;tc1++){
// cout << "Case #" << tc1 << ": ";
solve();
}
}
Compilation message
carnival.cpp:46:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
46 | main(){
| ^~~~
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
14 ms |
336 KB |
Output is correct |
2 |
Correct |
18 ms |
344 KB |
Output is correct |
3 |
Correct |
18 ms |
336 KB |
Output is correct |
4 |
Correct |
20 ms |
344 KB |
Output is correct |
5 |
Correct |
15 ms |
336 KB |
Output is correct |
6 |
Correct |
14 ms |
332 KB |
Output is correct |
7 |
Correct |
19 ms |
356 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
14 ms |
336 KB |
Output is correct |
2 |
Correct |
16 ms |
348 KB |
Output is correct |
3 |
Correct |
15 ms |
336 KB |
Output is correct |
4 |
Correct |
19 ms |
360 KB |
Output is correct |
5 |
Correct |
20 ms |
348 KB |
Output is correct |
6 |
Correct |
15 ms |
336 KB |
Output is correct |
7 |
Correct |
18 ms |
340 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
16 ms |
324 KB |
Output is correct |
2 |
Correct |
21 ms |
336 KB |
Output is correct |
3 |
Correct |
21 ms |
336 KB |
Output is correct |
4 |
Correct |
21 ms |
348 KB |
Output is correct |
5 |
Correct |
20 ms |
336 KB |
Output is correct |
6 |
Correct |
16 ms |
336 KB |
Output is correct |
7 |
Correct |
21 ms |
344 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
14 ms |
336 KB |
Output is correct |
2 |
Correct |
18 ms |
336 KB |
Output is correct |
3 |
Correct |
20 ms |
340 KB |
Output is correct |
4 |
Correct |
19 ms |
348 KB |
Output is correct |
5 |
Correct |
18 ms |
336 KB |
Output is correct |
6 |
Correct |
15 ms |
336 KB |
Output is correct |
7 |
Correct |
17 ms |
336 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
16 ms |
332 KB |
Output is correct |
2 |
Correct |
23 ms |
336 KB |
Output is correct |
3 |
Correct |
18 ms |
336 KB |
Output is correct |
4 |
Correct |
20 ms |
336 KB |
Output is correct |
5 |
Correct |
22 ms |
332 KB |
Output is correct |
6 |
Correct |
20 ms |
336 KB |
Output is correct |
7 |
Correct |
12 ms |
324 KB |
Output is correct |