Submission #166679

#TimeUsernameProblemLanguageResultExecution timeMemory
166679alanhpereiraCarnival (CEOI14_carnival)C++11
100 / 100
19 ms448 KiB
#include <bits/stdc++.h> #define MAX 160 using namespace std; vector<int> lists[MAX]; int nlidx = 0; int group[MAX]; int query(int l, int r, int e) { printf("%d ", r - l + 2); for (int i = l; i <= r; i++) { printf("%d ", lists[i][0]); } printf("%d\n", e); fflush(stdout); int ans; scanf("%d", &ans); return ans; } int main() { int n; scanf("%d", &n); group[1] = 1; lists[nlidx++].push_back(1); for (int i = 2; i <= n; i++) { int l = 0, r = nlidx - 1; int ans = query(l, r, i); if (ans == nlidx + 1) { lists[nlidx++].push_back(i); group[i] = nlidx; continue; } while (l != r) { int mid = (l + r) / 2; ans = query(l, mid, i); if (ans == mid - l + 2) { l = mid + 1; } else { r = mid; } } lists[l].push_back(i); group[i] = l + 1; } printf("0 "); for (int i = 1; i <= n; i++) { printf("%d ", group[i]); } printf("\n"); return 0; }

Compilation message (stderr)

carnival.cpp: In function 'int query(int, int, int)':
carnival.cpp:18:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &ans);
  ~~~~~^~~~~~~~~~~~
carnival.cpp: In function 'int main()':
carnival.cpp:24:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d", &n);
  ~~~~~^~~~~~~~~~
#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...