Submission #1180682

#TimeUsernameProblemLanguageResultExecution timeMemory
1180682vincentbucourt1Carnival (CEOI14_carnival)C++20
0 / 100
7 ms408 KiB
#include <bits/stdc++.h> using namespace std; const int MAXN = 152; int N; int color[MAXN]; int query (int i, int l, int r) { cout << (r-l+1+(i != l)) << " "; if (i != l) { cout << i+1 << " "; } for (int i = l; i <= r; i++) { cout << i+1 << " "; } cout << endl; int val; cin >> val; return val; } signed main() { cin >> N; fill(color, color+N, -1); int bigColor = 1; for (int i = 0; i < N-1; i++) { if (color[i] == -1) { color[i] = bigColor; bigColor++; } if (query(i+1, i+1, N-1) == query(i, i, N-1)) { int lo = i, hi = N-1; while (hi - lo > 1) { int mid = max(i+1, lo + (hi - lo) / 2); if (query(max(i+1, lo), max(i+1, lo), mid) == query(i, max(i+1, lo), mid)) { hi = mid; } else { lo = mid; } } cerr << hi << endl; color[hi] = color[i]; } } cout << "0 "; for (int i = 0; i < N; i++) { cout << color[i] << " "; } 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...