이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
int press(std::string p);
std::string guess_sequence(int N){
std::string ans="";
if(N==0)return ans;
char s[4];
if(press("A")==1)ans="A",s[0]='A',s[1]='B',s[2]='X',s[3]='Y';
else if(press("B")==1)ans="B",s[0]='B',s[1]='A',s[2]='X',s[3]='Y';
else if(press("X")==1)ans="X",s[0]='X',s[1]='B',s[2]='A',s[3]='Y';
else ans="Y",s[0]='Y',s[1]='B',s[2]='X',s[3]='A';
for(int i=2;i<=N-1;i++){
std::string now1 = ans;now1+=s[1];
std::string now2 = ans;now2+=s[2];now2+=s[1];
std::string now3 = ans;now3+=s[2];now3+=s[2];
std::string now4 = ans;now4+=s[2];now4+=s[3];
std::string tt = now1+now2+now3+now4;
int x = press(tt);
if(x==i-1)ans = ans+s[3];
else if(x==i)ans = ans+s[1];
else ans = ans+s[2];
}
std::string tt1=ans;tt1+=s[1];
std::string tt2=ans;tt2+=s[2];
if(press(tt1)==N){
return tt1;
}
else if(press(tt2)==N){
return tt2;
}
else{
ans+=s[3];return ans;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |