Submission #1297419

#TimeUsernameProblemLanguageResultExecution timeMemory
1297419alexiahCombo (IOI18_combo)C++20
0 / 100
1 ms332 KiB
#include "combo.h" using namespace std; string guess_sequence(int n) { string ans, opc; opc.push_back('A'); opc.push_back('B'); opc.push_back('X'); opc.push_back('Y'); int f1 , f2; f1 = press("AB"); f2 = press("AX"); if(f1 >= 1 && f2 >= 1){ ans.push_back('A'); swap(opc[0] , opc[3]); opc.pop_back(); swap(opc[0] , opc[1]); swap(opc[1] , opc[2]); } else if(f1 == 1 && f2 == 0){ ans.push_back('B'); swap(opc[1] , opc[3]); opc.pop_back(); swap(opc[1] , opc[2]); } else if(f1 == 0 && f2 == 1){ ans.push_back('X'); swap(opc[2] , opc[3]); opc.pop_back(); } else{ ans.push_back('Y'); opc.pop_back(); } for(int i = 1; i < n; i++){ string aux; aux += (ans + opc[0] + opc[0]); aux += (ans + opc[0] + opc[1]); aux += (ans + opc[0] + opc[2]); aux += (ans + opc[1]); int act = press(aux); if(act == i + 2) ans += opc[0]; else if(act == i + 1) ans += opc[1]; else ans += opc[2]; } string ns1 , ns2; ns1 += opc[0] + opc[1]; ns2 += opc[0] + opc[2]; int l1 , l2; l1 = press(ns1) , l2 = press(ns2); if(l1 >= 1 && l2 >= 1) ans += opc[0]; else if(l1 >= 1 && l2 == 0) ans += opc[1]; else ans += opc[2]; return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...