제출 #1316972

#제출 시각아이디문제언어결과실행 시간메모리
1316972hyyh콤보 (IOI18_combo)C++20
5 / 100
1 ms388 KiB
#include "combo.h" using namespace std; std::string guess_sequence(int N) { if(N == 1){ if(press("A")) return "A"; else if(press("B")) return "B"; else if(press("X")) return "X"; else return "Y"; } int a = press("AB"); string cur = ""; if(a > 1){ cur += "AB"; } else if(a == 1){ if(press("A")) cur += "A"; else cur += "B"; } else{ if(press("X")) cur += "X"; else cur += "Y"; } char arr[3]; if(cur[0] == 'A') arr[0] = 'B',arr[1] = 'X',arr[2] = 'Y'; if(cur[0] == 'B') arr[0] = 'A',arr[1] = 'X',arr[2] = 'Y'; if(cur[0] == 'X') arr[0] = 'A',arr[1] = 'B',arr[2] = 'Y'; if(cur[0] == 'Y') arr[0] = 'A',arr[1] = 'B',arr[2] = 'X'; while(cur.size() < N-1){ string n = ""; n += cur+arr[1]; n += cur+arr[2]+arr[0]; n += cur+arr[2]+arr[1]; n += cur+arr[2]+arr[2]; a = press(n); if(a == cur.size()) cur+=arr[0]; else if(a == cur.size()+1) cur+=arr[1]; else cur+=arr[2]; } if(press(cur+arr[0]) == N) return cur+arr[0]; else if(press(cur+arr[1]) == N) return cur+arr[1]; else return cur+arr[2]; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...