Submission #1252823

#TimeUsernameProblemLanguageResultExecution timeMemory
1252823ebrambillCombo (IOI18_combo)C++17
100 / 100
7 ms484 KiB
//In the name of GOD

#include <bits/stdc++.h>
#include "combo.h"
using namespace std;

string S, C, P, tmp="ABXY";

string guess_sequence(int n){
	if(n==1){
		if(press("A")) return "A";
		if(press("B")) return "B";
		if(press("X")) return "X";
		return "Y";
	}

	if(press("AB")){
		if(press("A")) P="A";
		else P="B";
	}
	else if(press("X")) P="X";
	else P="Y";

	for (char c: tmp)
		if(c!=P[0]) C+=c;

	while(P.size()+1<n){
		int cnt=press(P+C[0]+C[0]+P+C[0]+C[1]+P+C[0]+C[2]+P+C[1]);
		P+=(cnt==P.size()+2 ? C[0] : (cnt==P.size()+1 ? C[1] : C[2]));
	}

	if(press(P+C[0])==n) P+=C[0];
	else if(press(P+C[1])==n) P+=C[1];
	else P+=C[2];

	return P;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...