Submission #1214449

#TimeUsernameProblemLanguageResultExecution timeMemory
1214449Gabriel콤보 (IOI18_combo)C++20
5 / 100
0 ms408 KiB
#include "combo.h" #include "bits/stdc++.h" using namespace std; string guess_sequence(int n){ string r; if(press("AB") > 0){ if(press("A") == 1) r = "A"; else r = "B"; } else { if(press("X") == 1) r = "X"; else r = "Y"; } vector<string> Auxiliar; if(r == "A") Auxiliar = {"B", "XB", "XX", "XY"}; else if(r == "B") Auxiliar = {"A", "XA", "XX", "XY"}; else if(r == "X") Auxiliar = {"A", "BA", "BB", "BY"}; else if(r == "Y") Auxiliar = {"A", "BA", "BB", "BX"}; for(int i = 1; i < n - 1; i++){ int Valor = press(r + Auxiliar[0] + r + Auxiliar[1] + r + Auxiliar[2] + r + Auxiliar[3]); switch(r[0]){ case 'A': if(Valor == i) r += 'Y'; else if(Valor == i + 1) r += 'B'; else if(Valor == i + 2) r += 'X'; break; case 'B': if(Valor == i) r += 'Y'; else if(Valor == i + 1) r += 'A'; else if(Valor == i + 2) r += 'X'; break; case 'X': if(Valor == i) r += 'Y'; else if(Valor == i + 1) r += 'A'; else if(Valor == i + 2) r += 'B'; break; case 'Y': if(Valor == i) r += 'X'; else if(Valor == i + 1) r += 'A'; else if(Valor == i + 2) r += 'B'; break; } } if(press(r + "A" + r + "B") == n){ if(press(r + "A") == n) r += "A"; else r += "B"; } else { if(press(r + "X") == n) r += "X"; else r += "Y"; } //cerr<<r; return r; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...