Submission #1227765

#TimeUsernameProblemLanguageResultExecution timeMemory
1227765Tesla89Combo (IOI18_combo)C++20
100 / 100
8 ms472 KiB
#include "combo.h"
#include <vector>

using namespace std;

string guess_sequence(int N) {
    string res="";
    vector<char> ch;
    if(press("AB")>0){
        if(press("A")==1){
            res="A";
            ch = {'B','X','Y'};
        }
        else{
            res="B";
            ch = {'A','X','Y'};
        }
    }
    else if(press("X")==1){
        res="X";
        ch = {'A','B','Y'};
    }
    else{
        res="Y";
        ch = {'A','B','X'};
    }
    if(N==1)return res;
    string query="";
    for(int i=1;i<N-1;i++){
        for(int j=0;j<3;j++){
            query+=res+ch[2]+ch[j];
        }
        query+=res+ch[1];
        int response=press(query);
        res+=ch[response-res.size()];
        query="";
    }
    query=res+ch[0]+res+ch[1];
    if(press(query)==N-1)res+=ch[2];
    else if(press(res+ch[0])==N-1)res+=ch[1];
    else res+=ch[0];
    return res;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...