# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
346619 | 2021-01-10T12:33:38 Z | iliccmarko | Carnival (CEOI14_carnival) | C++14 | 0 ms | 0 KB |
#include <bits/stdc++.h> using namespace std; #define ll long long #define endl "\n" #define INF 1000000000 #define LINF 1000000000000000LL #define pb push_back #define all(x) x.begin(), x.end() #define len(s) (int)s.size() #define test_case { int t; cin>>t; while(t--)solve(); } #define single_case solve(); #define line cerr<<"----------"<<endl; #define ios { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cerr.tie(NULL); } #define mod 1000000007LL const int N = 155; int a[N]; int n; int main() { ios cin>>n; a[1] = 1; int cnt = 1; for(int i = 2;i<=n;i++) { cout<<i<<" "; for(int j = 1;j<=i;j++) { cout<<j<<" "; } cout<<endl; int num; cin>>num; if(num!=cnt) { a[i] = ++cnt; continue; } int l = 1; int r = i-1; while(l<r) { int mid = (l+r)/2; set<int> s; int w = i - mid + 1; cout<<w<<" "; for(int q = mid;q<=i;q++) cout<<q<<" "; cout<<endl; for(int q = mid;q<i;q++) s.insert(a[q]); int f; cin>>f; if(f!=len(s)) { l = ans; } else { r = mid - 1; } } a[i] = a[l]; } cout<<0<<" "; for(int i = 1;i<=n;i++) cout<<a[i]<<" "; return 0; }