Submission #1299722

#TimeUsernameProblemLanguageResultExecution timeMemory
1299722cpismayilmmdv985Combo (IOI18_combo)C++20
0 / 100
1 ms400 KiB
#include "combo.h" #include <bits/stdc++.h> using namespace std; string guess_sequence(int N) { string res = "", query; // find first char of string if (!N) return res; if (press("AB")) { if (press("A")) res += 'A'; else res += 'B'; } else { if (press("X")) res += 'X'; else res += 'Y'; } if (N == 1) return res; if (res[0] == 'A') { for (int i = 2; i < N; i++) { query = res + "BX" + res + "BY" + res + "BB" + res + "X"; int val = press(query); if (val == 2) res += 'B'; else if (val == 1) res += 'X'; else res += 'Y'; } if (press(res + 'B')) res += 'B'; else if (press(res + 'X')) res += 'X'; else res += 'Y'; } else if (res[0] == 'B') { for (int i = 2; i < N; i++) { query = res + "AX" + res + "AY" + res + "AA" + res + "X"; int val = press(query); if (val == 2) res += 'A'; else if (val == 1) res += 'X'; else res += 'Y'; } if (press(res + 'A')) res += 'A'; else if (press(res + 'X')) res += 'X'; else res += 'Y'; } else if (res[0] == 'X') { for (int i = 2; i < N; i++) { query = res + "AB" + res + "AY" + res + "AA" + res + "Y"; int val = press(query); if (val == 2) res += 'A'; else if (val == 1) res += 'Y'; else res += 'B'; } if (press(res + 'A')) res += 'A'; else if (press(res + 'B')) res += 'B'; else res += 'Y'; } else { for (int i = 2; i < N; i++) { query = res + "AB" + res + "AX" + res + "AA" + res + "X"; int val = press(query); if (val == 2) res += 'A'; else if (val == 1) res += 'X'; else res += 'B'; } if (press(res + 'A')) res += 'A'; else if (press(res + 'B')) res += 'B'; else res += 'X'; } return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...