# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1281126 | Faisal_Saqib | 콤보 (IOI18_combo) | C++20 | 0 ms | 0 KiB |
#include "combo.h"
#include <bits/stdc++.h>
using namespace std;
std::string guess_sequence(int n) {
string s="";
if(press("AB"))
{
if(press("A"))
{
s+='A';
}
else{
s+='B';
}
}
else
{
if(press("X"))
{
s+='X';
}
else{
s+='Y';
}
}
// cout<<"Cur "<<s<<endl;
set<char> ap ={'A','B','X','Y'};
ap.erase(s[0]);
vector<char> pos(all(ap));
for(int i=2;i<n;i++)
{
string qs=s+pos[0]+s+pos[1]+pos[0]+s+pos[1]+pos[1]+s+pos[1]+pos[2];
int x=press(qs)-s.size();
// cout<<"ASKEd "<<qs<<' '<<x<<endl;
if(x==0)
{
s+=pos[2];
}
else if(x==1)
{
s+=pos[0];
}
else{
s+=pos[1];
}
}
if(press(s+pos[0])==s.size()+1)
{
s+=pos[0];
}
else if(press(s+pos[1])==s.size()+1)
{
s+=pos[1];
}
else{
s+=pos[2];
}
return s;
}