# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
990030 | TitanicXDzz | 콤보 (IOI18_combo) | C++14 | 1 ms | 344 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "combo.h"
#include<bits/stdc++.h>
using namespace std;
std::string guess_sequence(int N) {
std::string p = "AB";
int coins = press(p);
if(coins>=1){
string s="A";
coins=press(s);
if(coins==1){
p="A";
for(int i=2;i<N;i++){
s=p+"BB"+p+"BX"+p+"BY"+p+"X";
coins=press(s);
if(coins==i+1)
p+="B";
else if(coins==i)
p+="X";
else
p+="Y";
}
s=p+"B";
coins=press(s);
if(coins==N)
p=s;
else{
s=p+"X";
coins=press(s);
if(coins==N)
p=s;
else
p+="Y";
}
}
else{
p="B";
for(int i=2;i<N;i++){
s=p+"AA"+p+"AX"+p+"AY"+p+"X";
coins=press(s);
if(coins==i+1)
p+="A";
else if(coins==i)
p+="X";
else
p+="Y";
}
s=p+"A";
coins=press(s);
if(coins==N)
p=s;
else{
s=p+"X";
coins=press(s);
if(coins==N)
p=s;
else
p+="Y";
}
}
}
else{
string s="X";
coins=press(s);
if(coins==1){
p="X";
for(int i=2;i<N;i++){
s=p+"BB"+p+"BA"+p+"BY"+p+"A";
coins=press(s);
if(coins==i+1)
p+="B";
else if(coins==i)
p+="A";
else
p+="Y";
}
s=p+"B";
coins=press(s);
if(coins==N)
p=s;
else{
s=p+"A";
coins=press(s);
if(coins==N)
p=s;
else
p+="Y";
}
}
else{
p="Y";
for(int i=2;i<N;i++){
s=p+"AA"+p+"AX"+p+"AB"+p+"X";
coins=press(s);
if(coins==i+1)
p+="A";
else if(coins==i)
p+="X";
else
p+="B";
}
s=p+"A";
coins=press(s);
if(coins==N)
p=s;
else{
s=p+"X";
coins=press(s);
if(coins==N)
p=s;
else
p+="B";
}
}
}
return p;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |