Submission #1183554

#TimeUsernameProblemLanguageResultExecution timeMemory
1183554attkyCarnival (CEOI14_carnival)C++20
0 / 100
8 ms408 KiB
#include <bits/stdc++.h> using namespace std; struct inter { int start, end; int size() { return end - start; } int mid() { return (start + end) / 2; } inter left() { return {start, mid()}; } inter right() { return {mid(), end}; } }; bool vu[200]; int costume[200], iCost = 1; void findSame(int n, inter area) { int res1, res2; cout << area.size() + 1 << " " << n << " "; for(int loop = area.start; loop < area.end; ++loop) { cout << loop << " "; } cout << '\n'; cin >> res1; cout << area.size() << " "; for(int loop = area.start; loop < area.end; ++loop) { cout << loop << " "; } cout << '\n'; cin >> res2; if(res1 == res2) { if(area.size() == 1) { costume[area.start] = iCost; vu[area.start] = true; } else { findSame(n, area.left()); findSame(n, area.right()); } } } int main() { int n; cin >> n; for(int loop = 1; loop <= n; ++loop) { vu[loop] = false; } for(int loop = 1; loop <= n; ++loop) { if(!vu[loop]) { vu[loop] = true; costume[loop] = iCost; findSame(loop, {loop+1, n+1}); iCost++; } } cout << "0 "; for(int loop = 1; loop <= n; ++loop) { cout << costume[loop] << " "; } 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...