# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
855744 | IS_Rushdi | Combo (IOI18_combo) | C++17 | 1 ms | 344 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
// #include <iostream>
#include "combo.h"
using namespace std;
// int press(string x){
// return 0;
// }
string guess_sequence(int N) {
string x = "ABXY";
string S = "";
int cost = press("AB");
if(cost != 0){
cost = press("A");
if(cost == 1) S += 'A';
else S += 'B';
}else{
cost = press("X");
if(cost == 1) S += 'X';
else S += 'Y';
}
if(S[0] == 'A') x = "BXY";
else if(S[0] == 'B') x = "AXY";
else if(S[0] == 'X') x = "ABY";
else x = "ABX";
for(int i = 1; i < N; i++){
string p = "";
for(int j = 0; j < 3; j++){
p+=S + x[0] + x[j];
}
p+=S + x[1];
cost = press(p);
if(cost-i >= 2){
S += x[0];
}else if(cost-i == 1){
S += x[1];
}else{
S += x[2];
}
}
if(S.size() != N){
cost = press(S+x[0]);
if(cost == N){
S += x[0];
}else{
cost = press(S+x[1]);
if(cost == N){
S += x[1];
}else{
S+=x[2];
}
}
}
return S;
}
// int main(){
// }
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |