# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1142602 | amm_oux | Combo (IOI18_combo) | C++20 | 0 ms | 396 KiB |
#include "combo.h"
using namespace std;
std::string guess_sequence(int N) {
std::string p = "";
string constr ="";
int var ;
var = press("AB");
if (N==1){
if(var == 1 ){
if(press("B")==1)return "B";
else return "A";
}
else if(press("X")==1)return "X";
else return "Y";
}
else if (N==2){
if(var == 1 ){constr += "B";}
else if(var == 2 ){return "AB";}
else {
if(press("X")==1)constr+="X";
else constr+="Y";
}
}
else if (N>2){
if (var==2){constr+="A";}
else if(var>0){
if (press("B")==1){constr+="B";}
else {constr+="A";}
}
else{
if(press("X")==1){constr+="X";}
else{constr+="Y";}
}
if (press(constr)==N){return constr;}
}
if (constr=="A"){
for( int i = 1 ; i<N-1; i++ ){
p=constr+"B"+constr+"X"+"X"+constr+"X"+"B"+constr+"X"+"Y";
var = press(p);
if (var==constr.size()+1){constr+="B";}
else if (var==constr.size()+2){constr+="X";}
else if (var==constr.size()){constr+="Y";}
}
if(press(constr+"B")==N){constr+="B";}
else if (press(constr+"X")==N){constr+="X";}
else {constr+="Y";}
return constr ;
}
else if (constr=="B"){
for( int i = 1 ; i<N-1; i++ ){
p=constr+"A"+constr+"X"+"X"+constr+"X"+"A"+constr+"X"+"Y";
var = press(p);
if (var==constr.size()+1){constr+="A";}
else if (var==constr.size()+2){constr+="X";}
else if (var==constr.size()){constr+="Y";}
}
if(press(constr+"A")==N){constr+="A";}
else if (press(constr+"X")==N){constr+="X";}
else {constr+="Y";}
return constr ;
}
else if (constr=="X"){
for( int i = 1 ; i<N-1; i++ ){
p=constr+"A"+constr+"B"+"B"+constr+"B"+"A"+constr+"B"+"Y";
var = press(p);
if (var==constr.size()+1){constr+="A";}
else if (var==constr.size()+2){constr+="B";}
else if (var==constr.size()){constr+="Y";}
}
if(press(constr+"A")==N){constr+="A";}
else if (press(constr+"B")==N){constr+="B";}
else {constr+="Y";}
return constr ;
}
else if (constr=="Y"){
for( int i = 1 ; i<N-1; i++ ){
p=constr+"A"+constr+"X"+"X"+constr+"X"+"A"+constr+"X"+"B";
var = press(p);
if (var==constr.size()+1){constr+="A";}
else if (var==constr.size()+2){constr+="X";}
else if (var==constr.size()){constr+="B";}
}
if(press(constr+"A")==N){constr+="A";}
else if (press(constr+"X")==N){constr+="X";}
else {constr+="B";}
return constr ;
}
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |