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 "combo.h"
#include <vector>
using namespace std;
string guess_sequence(int N) {
string S;
char first;
int x = press("AB");
if (x == 2) {
S = "AB";
first = 'A';
} else if (x == 1) {
x = press("A");
if (x) {
first = 'A';
S = "A";
}
else {
first = 'B';
S = "B";
}
} else {
x = press("X");
if (x) {
first = 'X';
S = "X";
} else {
first = 'Y';
S = "Y";
}
}
vector<string> pos;
if (first != 'A') pos.push_back("A");
if (first != 'B') pos.push_back("B");
if (first != 'X') pos.push_back("X");
if (first != 'Y') pos.push_back("Y");
while((int) S.length() < N) {
if (3*((int) S.length() + 2) + (int) S.length() + 1 <= 4*N) {
x = press(S + pos[0] + pos[0] + S + pos[0] + pos[1] + S + pos[0] + pos[2] + S + pos[1]);
if (x == (int) S.length() + 2) S += pos[0];
else if (x == (int) S.length() + 1) S += pos[1];
else S += pos[2];
} else {
x = press(S + pos[0]);
if(x == (int) S.length() + 1) {
S += pos[0];
continue;
}
x = press(S + pos[1]);
if (x == (int) S.length() + 1) S += pos[1];
else S += pos[2];
}
}
return S;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |