#include <bits/stdc++.h>
using namespace std;
int press(string p);
// cout << p << endl;
// int x;
// cin >> x;
// return x;
//}
string guess_sequence(int N) {
string p = "AB";
string ans = "";
int coins = press(p);
char v0;
if (coins != 0) {
p = "A";
if (press(p)) {
v0 = 'A';
ans = "A";
}
else {
v0 = 'B';
ans = "B";
}
}
else {
p = "X";
coins = press(p);
if (coins) {
ans += 'X';
v0 = 'X';
}
else {
ans += 'Y';
v0 = 'Y';
}
}
if (N == 1) {
return ans;
}
while (ans.size() < N - 1) {
p.clear();
if (v0 == 'A') p = ans + "B" + "X" + ans + "B" + "Y" + ans + "B" + "B" + ans + "X";
if (v0 == 'B') p = ans + "A" + "X" + ans + "A" + "Y" + ans + "A" + "A" + ans + "X";
if (v0 == 'X') p = ans + "A" + "Y" + ans + "A" + "B" + ans + "A" + "A" + ans + "Y";
if (v0 == 'Y') p = ans + "A" + "X" + ans + "A" + "B" + ans + "A" + "A" + ans + "X";
int coins = press(p);
if (coins == 3) {
if (v0 == 'A') ans += 'B';
if (v0 == 'B') ans += 'A';
if (v0 == 'X') ans += 'A';
if (v0 == 'Y') ans += 'A';
}
else if (coins == 2) {
if (v0 == 'A') ans += 'X';
if (v0 == 'B') ans += 'X';
if (v0 == 'X') ans += 'Y';
if (v0 == 'Y') ans += 'X';
}
else {
if (v0 == 'A') ans += 'Y';
if (v0 == 'B') ans += 'Y';
if (v0 == 'X') ans += 'B';
if (v0 == 'Y') ans += 'B';
}
}
if (v0 == 'A') {
if (press(ans + 'B') == N) {
return ans + 'B';
}
else if (press(ans + 'X') == N) {
return ans + 'X';
}
return ans + 'Y';
}
if (v0 == 'B') {
if (press(ans + 'A') == N) {
return ans + 'A';
}
else if (press(ans + 'X') == N) {
return ans + 'X';
}
return ans + 'Y';
}
if (v0 == 'X') {
if (press(ans + 'B') == N) {
return ans + 'B';
}
else if (press(ans + 'A') == N) {
return ans + 'A';
}
return ans + 'Y';
}
if (v0 == 'Y') {
if (press(ans + 'B') == N) {
return ans + 'B';
}
else if (press(ans + 'X') == N) {
return ans + 'X';
}
return ans + 'A';
}
return ans;
}
//int main() {
// cout << guess_sequence(2) << endl;
//}//yaa, yab, yba, ybb,
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |