제출 #1142677

#제출 시각아이디문제언어결과실행 시간메모리
1142677redamoi콤보 (IOI18_combo)C++20
5 / 100
0 ms396 KiB
#include "combo.h" std::string guess_sequence(int N) { std::string S=""; std::string p=""; std::string f=""; int coins = press("AB"); if(coins >= 1){ coins = press("A"); if(coins ==1) S+="A"; else S+="B"; }else{ coins = press("X"); if(coins ==1) S+="X"; else S+="Y"; } f+=S; for(int i=1;i<=N-2;i++){ if(f=="A"){ p = S+"B"+S+"XX"+S+"XY"+S+"XB"; coins = press(p); if(coins == i+1){ S+="B"; }else if(coins == i+2){ S+="X"; }else{ S+="Y"; } } if(f=="B"){ p = S+"A"+S+"XX"+S+"XY"+S+"XA"; coins = press(p); if(coins == i+1){ S+="A"; }else if(coins == i+2){ S+="X"; }else{ S+="Y"; } } if(f=="X"){ p = S+"B"+S+"AA"+S+"AY"+S+"AB"; coins = press(p); if(coins == i+1){ S+="B"; }else if(coins == i+2){ S+="A"; }else{ S+="Y"; } } if(f=="Y"){ p = S+"B"+S+"XX"+S+"XA"+S+"XB"; coins = press(p); if(coins == i+1){ S+="B"; }else if(coins == i+2){ S+="X"; }else{ S+="A"; } } } if(f=="A"){ p=S+"X"; int coins = press(p); if(coins == N){ S+="X"; }else{ p=S+"Y"; coins = press(p); if(coins ==N) S+="Y"; else S+="B"; } } if(f=="B"){ p=S+"X"; int coins = press(p); if(coins == N){ S+="X"; }else{ p=S+"Y"; coins = press(p); if(coins ==N) S+="Y"; else S+="A"; } } if(f=="Y"){ p=S+"X"; int coins = press(p); if(coins == N){ S+="X"; }else{ p=S+"A"; coins = press(p); if(coins ==N) S+="A"; else S+="B"; } } if(f=="X"){ p=S+"A"; int coins = press(p); if(coins ==N){ S+="A"; }else{ p=S+"Y"; coins = press(p); if(coins ==N) S+="Y"; else S+="B"; } } return S; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...