Submission #753761

#TimeUsernameProblemLanguageResultExecution timeMemory
753761vjudge1Carnival (CEOI14_carnival)C++17
100 / 100
14 ms2688 KiB
#include<bits/stdc++.h> #define MaxN 100005 using namespace std; int n; vector<int> cLis[MaxN]; int ans[MaxN]; int main() { cin >> n; for(int c = 1; c <= n; ++c) cLis[c].clear(); for(int i = 1; i <= n; ++i) ans[i] = -1; int cnt = 1; cLis[1].push_back(1); ans[1] = 1; for(int i = 2; i <= n; ++i) { int lo = 1, hi = cnt, pos = -1; while(lo <= hi) { int k = 1, mi = (lo+hi)/2; cout << mi-lo+1 + 1 << " " << i << " "; for(int c = lo; c <= mi; ++c) cout << cLis[c][0] << " "; cout << "\n"; cin >> k; if (k > mi-lo+1) { lo = mi+1; } else { pos = mi; hi = mi-1; } } if (pos == -1) { ++cnt; cLis[cnt].push_back(i); ans[i] = cnt; } else { cLis[pos].push_back(i); ans[i] = pos; } } cout << "0 "; for(int i = 1; i <= n; ++i) cout << ans[i] << " "; cout << "\n"; 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...