Submission #918544

#TimeUsernameProblemLanguageResultExecution timeMemory
918544Fikrat_AsadzadehCarnival (CEOI14_carnival)C++14
0 / 100
1 ms600 KiB
#include <bits/stdc++.h> using namespace std; typedef unsigned long long ull; #define ll long long typedef vector < int > vl; typedef set < int > setl; #define F first #define S second #define all(v) v.begin(), v.end() #define pll pair < int , int > #define db double #define nll cout << "\n" #define nl endl #define sync \ ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0) ; const int MAX = 1e6 + 5; const long long inf = 1e18; map < vl, ll> mp; ll n, a[MAX], k; ll ask(vl &v){ if(mp[v])return mp[v]; cout << v.size() << " "; for(auto i : v){ cout << i << " "; } nll; ll x; cin >> x; return mp[v] = x; } void solve(){ vl v; cin >> n; ll x = 0; for(ll i = 1; i <= n; i++){ v.push_back(i); k = ask(v); if(k > x)a[i] = k, x = k; else{ v.pop_back(); ll l = 0, r = v.size() - 1; while(l < r){ ll mid = (l + r) / 2; vl cur; for(ll i = 0; i <= mid; i++){ cur.push_back(v[i]); } ll curr = ask(cur); cur.push_back(v[i]); ll cur2 = ask(cur); if(cur2 == curr){ r = mid; } else l = mid + 1; } a[i] = a[v[l]]; } } cout << "0 "; for(ll i = 1; i <= n; i++)cout << a[i] << " "; } signed main(){ ll t = 1; //cin >> t; while(t--){ solve(); } }
#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...