# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1279257 | cnastea | 콤보 (IOI18_combo) | C++20 | 0 ms | 0 KiB |
string guess_sequence(int n){
string p, q;
int k = press("AB");
if(k) {k = press("A"); if(k) p = "A"; else p = "B";}
else {k = press("X"); if(k) p = "X"; else p = "Y";}
if(n == 1) return p;
set<char> s = {'A', 'B', 'X', 'Y'}; s.erase(p[0]);
char a, b, c; a = *s.begin(); s.erase(s.begin());
b = *s.begin(); s.erase(s.begin()); c = *s.begin();
while(p.size() < n-1){
q = p+a+a+p+a+b+p+a+c+p+b;
k = press(q); if(k == p.size()) p += c;
if(k == p.size()+1) p += b;
if(k == p.size()+2) p += a;
}
k = press(p+a); if(k == n) return p+a;
k = press(p+b); if(k == n) return p+b;
return p+c;
}