제출 #1043170

#제출 시각아이디문제언어결과실행 시간메모리
1043170sofpp콤보 (IOI18_combo)C++14
0 / 100
0 ms344 KiB
#include<bits/stdc++.h> #include "combo.h" using namespace std; string guess_sequence(int N) { string p = "";string S = ""; int coins=press("AB"); if(coins==2){ S+='A';S+='B'; } else if(coins==1){ coins+=press("A"); if(coins>1){ S+='A'; }else{ S+='B'; } } else{ coins=press("XY"); if(coins==2){ S+='X';S+='Y'; } else if(coins==1){ coins+=press("X"); if(coins>1){ S+='X'; } else{ S+='Y'; } } } string character=S; if(coins==2){ for(int i=2;i<N-1;i++){ p=""; if(character=="A"){ p+=S; p+='B';p+=S; p+="XY";;p+=S;p+="XB";p+=S;;p+="XX"; if(press(p)==(int)S.size()+2){ S+='B'; } else if(press(p)==(int)S.size()+3){ S+='X'; } else{ S+='Y'; } } if(character=="B"){ p+=S; p+='A';p+=S; p+="XA";;p+=S;p+="XY";p+=S;;p+="XX"; if(press(p)==(int)S.size()+2){ S+='A'; } else if(press(p)==(int)S.size()+3){ S+='X'; } else{ S+='Y'; } } if(character=="X"){ p+=S; p+='A';p+=S; p+="BA";;p+=S;p+="BY";p+=S;;p+="BB"; if(press(p)==(int)S.size()+2){ S+='A'; } else if(press(p)==(int)S.size()+3){ S+='B'; } else{ S+='Y'; } } if(character=="Y"){ p+=S; p+='A';p+=S; p+="BA";;p+=S;p+="BX";p+=S;;p+="BB"; if(press(p)==(int)S.size()+2){ S+='A'; } else if(press(p)==(int)S.size()+3){ S+='B'; } else{ S+='X'; } } } } else{ for(int i=1;i<N-1;i++){ p=""; if(character=="A"){ p+=S; p+='B';p+=S; p+="XY";;p+=S;p+="XB";p+=S;;p+="XX"; if(press(p)==(int)S.size()+2){ S+='B'; } else if(press(p)==(int)S.size()+3){ S+='X'; } else{ S+='Y'; } } if(character=="B"){ p+=S; p+='A';p+=S; p+="XA";;p+=S;p+="XY";p+=S;;p+="XX"; if(press(p)==(int)S.size()+2){ S+='A'; } else if(press(p)==(int)S.size()+3){ S+='X'; } else{ S+='Y'; } } if(character=="X"){ p+=S; p+='A';p+=S; p+="BA";;p+=S;p+="BY";p+=S;;p+="BB"; if(press(p)==(int)S.size()+2){ S+='A'; } else if(press(p)==(int)S.size()+3){ S+='B'; } else{ S+='Y'; } } if(character=="Y"){ p+=S; p+='A';p+=S; p+="BA";;p+=S;p+="BX";p+=S;;p+="BB"; if(press(p)==(int)S.size()+2){ S+='A'; } else if(press(p)==(int)S.size()+3){ S+='B'; } else{ S+='X'; } } } } p = ""; if(character=="A"){ p+=S;p+="B";p+=S;p+='X'; if(press(p)== N){ string c=S+'B'; if(press(c)==N){ S+='B'; } else{ S+='X'; } } else{ S+='Y'; } } if(character=="B"){ p+=S;p+="A";p+=S;p+='X'; if(press(p)== N){ string c=S+'A'; if(press(c)==N){ S+='A'; } else{ S+='X'; } } else{ S+='Y'; } } if(character=="A"){ p+=S;p+="A";p+=S;p+='B'; if(press(p)== N){ string c=S+'A'; if(press(c)==N){ S+='A'; } else{ S+='B'; } } else{ S+='Y'; } } if(character=="Y"){ p+=S;p+="A";p+=S;p+='B'; if(press(p)== N){ string c=S+'A'; if(press(c)==N){ S+='A'; } else{ S+='B'; } } else{ S+='X'; } } // int coins = press(p); // for (int i = 0; i < N; ++i) { // S += 'A'; // } return S; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...