Submission #257145

#TimeUsernameProblemLanguageResultExecution timeMemory
257145islingrCarnival (CEOI14_carnival)C++17
100 / 100
34 ms384 KiB
#include <bits/stdc++.h>
using namespace std;

#define rep(i, a, b) for (auto i = (a); i < (b); ++i)

int ask(int l, int r) {
	cout << r - l;
	rep(i, l, r) cout << ' ' << i + 1;
	cout << endl;
	int res; cin >> res;
	return res;
}

signed main() {
	ios::sync_with_stdio(false);

	int n, cnt = 0; cin >> n;
	vector<int> c(n);
	for (int i = n; i--; ) {
		int l = i + 1, r = n + 1;
		while (r - l > 1) {
			int m = (l + r) >> 1;
			(ask(i, m) != ask(i + 1, m) ? l : r) = m;
		}
		c[i] = (l != n ? c[l] : ++cnt);
	}
	cout << 0;
	rep(i, 0, n) cout << ' ' << c[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...