Submission #1213300

#TimeUsernameProblemLanguageResultExecution timeMemory
1213300Captain_GeorgiaCarnival (CEOI14_carnival)C++20
100 / 100
4 ms444 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; int ask (vector<int> arr) { cout << arr.size(); for (auto x : arr) cout << " " << x; cout << endl; int res; cin >> res; return res; } int32_t main () { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int N; cin >> N; vector<int> dist, arr(N + 1, 0); arr[1] = 1; dist.push_back(1); for (int i = 2;i <= N;i ++) { int low = 0, high = dist.size(); while (low < high) { int mid = (low + high) / 2; vector<int> tmp; for (int j = 0;j <= mid;j ++) tmp.push_back(dist[j]); tmp.push_back(i); if (ask(tmp) == tmp.size() - 1) high = mid; else low = mid + 1; } // cout << i << " " << high << endl; if (high == dist.size()) { arr[i] = dist.size() + 1; dist.push_back(i); } else { arr[i] = arr[dist[high]]; } } for (auto x : arr) cout << x << " "; 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...