Submission #1266370

#TimeUsernameProblemLanguageResultExecution timeMemory
1266370cmiucCombo (IOI18_combo)C++20
0 / 100
1 ms408 KiB
#include <iostream>
#include <vector>
#include "combo.h"

using namespace std;

int ask(vector<string> v){
	string s;
	for (auto i : v)
		s += i;
	return press(s);
}

string guess_sequence(int n){
	string fr = "A", s = "B", t = "X", f = "Y";

	string Ans;
	if (ask({fr, s}) > 0){
		if (ask({s}) == 1)
			Ans = s, swap(fr, s);
		else
			Ans = fr;
	}
	else{
		if (ask({t}) == 1)
			Ans = t, swap(fr, t);
		else
			Ans = f, swap(fr, t);
	}

	for (int i=2;i<n;i++){
		int res = ask({Ans, s, Ans, t, s, Ans, t, t, Ans, t, f});
		if (res == i - 1)
			Ans += f;
		else if (res == i)
			Ans += s;
		else
			Ans += t;
	}

	if (n == 1)
		return Ans;
	if (ask({Ans, s}) == n)
		Ans += s;
	else if (ask({Ans, t}) == n)
		Ans += t;
	else
		Ans += f;
	return Ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...