Submission #1356101

#TimeUsernameProblemLanguageResultExecution timeMemory
1356101AgageldiCarnival (CEOI14_carnival)C++20
0 / 100
0 ms344 KiB
#include <bits/stdc++.h>
using namespace std;

#define N 500005

const int inf = INT_MAX;
const int M = 998244353;

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());

int tc = 1, n, a[N];

signed main() {
    ios::sync_with_stdio(0);cin.tie(0);
    cin >> n;
    vector <int> v;
    int nx = 1;
    for(int i = 1; i <= n; i++) {
        v.push_back(i);
        cout << (int)v.size() << " ";
        for(auto j : v) {
            cout << j << " ";
        }
        int x = 0;
        cin >> x;
        if((int)v.size() == x) {
            a[i] = x;
        }
        else {
            v.pop_back();
            int l = 0, r = (int)v.size() - 1, jog = 0;
            while(l <= r) {
                int mid = (l + r) / 2;
                cout << mid + 2 << " " << i << " ";
                for(int j = 0; j <= mid; j++) {
                    cout << v[j] << " ";
                }
                int p = 0;
                cin >> p;
                if(p == mid + 2) {
                    l = mid + 1;
                }
                else {
                    jog = mid;
                    r = mid - 1;
                }
            }
            a[i] = v[jog];
        }
    }
    for(int i =1; i <= n; i++) {
        cout << a[i] << " ";
    }
    return 0;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...