Submission #1194078

#TimeUsernameProblemLanguageResultExecution timeMemory
1194078Hamed_GhaffariCarnival (CEOI14_carnival)C++20
100 / 100
3 ms432 KiB
#include <bits/stdc++.h>
using namespace std;

int c[151], n, cnt;
bool vis[151];

int32_t main() {
    cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0);
    cin >> n;
    int cnt=1;
    c[1] = 1;
    for(int i=2; i<=n; i++) {
        cout << i << ' ';
        for(int j=1; j<=i; j++) cout << j << ' ';
        cout << endl;
        int x;
        cin >> x;
        if(x==cnt+1) {
            c[i] = ++cnt;
            continue;
        }
        else {
            int l=1, r=i;
            while(r-l>1) {
                int mid = (l+r)>>1;
                int dif=0;
                cout << i-mid+1 << ' ';
                for(int j=mid; j<=i; j++) {
                    cout << j << ' ';
                    dif += !vis[c[j]] && j<i;
                    vis[c[j]] = 1;
                }
                cout << endl;
                for(int j=mid; j<=i; j++) vis[c[j]] = 0;
                cin >> x;
                (x==dif ? l : r) = mid;
            }
            c[i] = c[l];
        }
    }
    cout << "0 ";
    for(int i=1; i<=n; i++) cout << c[i] << ' ';
    cout << endl;
    return 0;
}
#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...