#include <bits/stdc++.h>
using namespace std;
int N;
vector<int> costume;
int q(const vector<int>& people) {
if(people.size() == 1){
return 1;
}
cout << people.size();
for (int p : people) {
cout << " " << p;
}
cout << endl;
int x;
cin >> x;
return x;
}
int main() {
cin >> N;
costume.resize(N + 1);
vector<vector<int>> groups;
for (int i = 1; i <= N; ++i) {
bool found = false;
for (auto& g : groups) {
vector<int> test = g;
test.push_back(i);
if (q(test) == q(g)) {
g.push_back(i);
found = true;
break;
}
}
if (!found) {
groups.push_back({i});
}
}
cout << 0;
for (int i = 1; i <= N; ++i) {
for (int c = 0; c < groups.size(); ++c) {
if (find(groups[c].begin(), groups[c].end(), i) != groups[c].end()) {
costume[i] = c + 1;
break;
}
}
cout << " " << costume[i];
}
cout << endl;
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |