Submission #230960

#TimeUsernameProblemLanguageResultExecution timeMemory
230960peijarCombo (IOI18_combo)C++17
0 / 100
1 ms200 KiB
#include <bits/stdc++.h>
using namespace std;

int press(string p);

string guess_sequence(int len)
{
	string ret = "";
	string keys = "ABXY";
	char first_car;
	if (press("AB"))
	{
		if (press("A"))
			first_car = 'A';
		else
			first_car = 'B';
	}
	else
	{
		if (press("X"))
			first_car = 'X';
		else
			first_car = 'Y';
	}
	string keys_left = "";
	for (auto c : keys)
		if (c != first_car)
			keys_left += c;

	for (int nb_trouve(2); nb_trouve < len; ++nb_trouve)
	{
		string ask = "";
		for (auto c : keys_left)
			ask += ret + keys_left[0] + c;
		ask += ret + keys_left[1];
		int nb = press(ask);
		if (nb == nb_trouve - 1)
			ret += keys_left[2];
		if (nb == nb_trouve)
			ret += keys_left[1];
		if (nb == nb_trouve + 1)
			ret += keys_left[2];
	}

	if (press(ret + keys_left[0]) == len)
		ret += keys_left[0];
	else
	{
		if (press(ret + keys_left[1]) == len)
			ret += keys_left[1];
		else
			ret += keys_left[2];
	}
	return ret;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...