Submission #1184662

#TimeUsernameProblemLanguageResultExecution timeMemory
1184662petezaCarnival (CEOI14_carnival)C++20
100 / 100
2 ms428 KiB
#include <bits/stdc++.h>
using namespace std;

int n, x;
int arr[100005];
int ccol = 0;
int carr[100005];

int main() {
    cin >> n;
    carr[0] = 1;
    for(int i=2;i<=n;i++) {
        cout << i;
        for(int j=1;j<=i;j++) cout << ' ' << j;
        cout << endl;
        cin >> x;
        if(ccol+1 != x) {
            arr[i] = ++ccol;
            carr[ccol] = i;
        } else {
            //bsearch
            int l=0, r=x-1, mid;
            while(l <= r) {
                mid = (l+r) >> 1;
                cout << mid-l+2;
                for(int i=l;i<=mid;i++) cout << ' ' << carr[i];
                cout << ' ' << i;
                cout << endl;
                cin >> x;
                if(x == mid-l+1) r = mid - 1;
                else l = mid+1;
            }
            arr[i] = l;
        }
    }
    cout << 0;
    for(int i=1;i<=n;i++) cout << ' ' << arr[i]+1;
    cout << endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...