Submission #1301923

#TimeUsernameProblemLanguageResultExecution timeMemory
1301923nathlol2Combo (IOI18_combo)C++20
100 / 100
8 ms464 KiB
#include "combo.h" #include <bits/stdc++.h> using namespace std; std::string guess_sequence(int N){ char a[3]; string ans = ""; if(press("AB")){ if(press("A")){ ans += 'A'; a[0] = 'B'; a[1] = 'X'; a[2] = 'Y'; }else{ ans += 'B'; a[0] = 'A'; a[1] = 'X'; a[2] = 'Y'; } }else{ if(press("X")){ ans += 'X'; a[0] = 'A'; a[1] = 'B'; a[2] = 'Y'; }else{ ans += 'Y'; a[0] = 'A'; a[1] = 'B'; a[2] = 'X'; } } for(int i = 1;i<N;i++){ if(i == N - 1){ if(press(ans + a[0]) == N){ return ans + a[0]; }else if(press(ans + a[1]) == N){ return ans + a[1]; }else return ans + a[2]; } int c = press(ans + a[0] + a[1] + ans + a[0] + a[2] + ans + a[1] + a[0]); if(c == i){ ans += a[2]; }else if(c == i + 1){ int cc = press(ans + a[1] + a[1]); if(cc == i){ ans += a[0]; ans += a[0]; }else if(cc == i + 1){ ans += a[1]; ans += a[2]; }else{ ans += a[1]; ans += a[1]; } ++i; }else{ int cc = press(ans + a[0] + a[2]); if(cc == i){ ans += a[1]; ans += a[0]; }else if(cc == i + 1){ ans += a[0]; ans += a[1]; }else{ ans += a[0]; ans += a[2]; } ++i; } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...