Submission #1192695

#TimeUsernameProblemLanguageResultExecution timeMemory
1192695stdfloatCombo (IOI18_combo)C++20
5 / 100
0 ms408 KiB
#include <bits/stdc++.h>
#include "combo.h"
// #include "grader.cpp"
using namespace std;

string guess_sequence(int n) {
	string s;
	vector<string> v = {"A", "B", "X", "Y"};
	for (int i = 0; i < 4; i++) {
		if (i == 3 || press(v[i])) {
			s += v[i];
			v.erase(v.begin() + i);
			break;
		}
	}

	for (int i = 1; i < n - 1; i++) {
		string t = s + v[1];
		for (auto j : v)
			t += s + v[2] + j;

		for (auto j : t)
			assert(j == 'A' || j == 'B' || j == 'X' || j == 'Y');

		assert((int)t.size() <= 4 * n);

		s += v[press(t) - i];
	}

	for (auto i : v) {
		s += i;

		assert((int)s.size() == n);
		
		if (i == v.back() || press(s) == n) return s;

		s.pop_back();
	}

	assert(false);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...