#include "combo.h"
std::string guess_sequence(int N) {
std::string S="";
std::string p="";
std::string f="";
int coins = press("AB");
if(coins >= 1){
coins = press("A");
if(coins ==1) S+="A";
else S+="B";
}else{
coins = press("X");
if(coins ==1) S+="X";
else S+="Y";
}
f+=S;
for(int i=1;i<=N-2;i++){
if(f=="A"){
p = S+"B"+S+"XX"+S+"XY"+S+"XB";
coins = press(p);
if(coins == i+1){
S+="B";
}else if(coins == i+2){
S+="X";
}else{
S+="Y";
}
}
if(f=="B"){
p = S+"A"+S+"XX"+S+"XY"+S+"XA";
coins = press(p);
if(coins == i+1){
S+="A";
}else if(coins == i+2){
S+="X";
}else{
S+="Y";
}
}
if(f=="X"){
p = S+"B"+S+"AA"+S+"AY"+S+"AB";
coins = press(p);
if(coins == i+1){
S+="B";
}else if(coins == i+2){
S+="A";
}else{
S+="Y";
}
}
if(f=="Y"){
p = S+"B"+S+"XX"+S+"XA"+S+"XB";
coins = press(p);
if(coins == i+1){
S+="B";
}else if(coins == i+2){
S+="X";
}else{
S+="A";
}
}
}
if(f=="A"){
p=S+"X";
int coins = press(p);
if(coins == N){
S+="X";
}else{
p=S+"Y";
coins = press(p);
if(coins ==N) S+="Y";
else S+="B";
}
}
if(f=="B"){
p=S+"X";
int coins = press(p);
if(coins == N){
S+="X";
}else{
p=S+"Y";
coins = press(p);
if(coins ==N) S+="Y";
else S+="A";
}
}
if(f=="Y"){
p=S+"X";
int coins = press(p);
if(coins == N){
S+="X";
}else{
p=S+"A";
coins = press(p);
if(coins ==N) S+="A";
else S+="B";
}
}
if(f=="X"){
p=S+"A";
int coins = press(p);
if(coins ==N){
S+="A";
}else{
p=S+"Y";
coins = press(p);
if(coins ==N) S+="Y";
else S+="B";
}
}
return S;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |