# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
203598 | Tadiorn | 콤보 (IOI18_combo) | C++14 | 0 ms | 0 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#include "combo.h"
using namespace std;
string guess_sequence(int N)
{
string f;
int te = press("AB");
if(te >= 1)
{
te = press("A");
if(te == 1)
{
f = "A";
}
else
{
f = "B";
}
}
else
{
te = press("X");
if(te == 1)
{
f = "X";
}
else
{
f = "Y";
}
}
if(f == "A")
{
for(int i = 1; i < N - 1; i++)
{
int t = press(f + "X"+ f + "YB" + f + "YX" + f + "YY");
if(t == (int)f.size())
{
f += "B";
}
else if(t == (int)f.size() + 1)
{
f += "X";
}
else //if(t == s.size() + 2)
{
f += "Y";
}
}
}
else if(f == "B")
{
int t = press(f + "X"+ f + "YA" + f + "YX" + f + "YY");
if(t == (int)f.size())
{
f += "A";
}
else if(t == (int)f.size() + 1)
{
f += "X";
}
else //if(t == s.size() + 2)
{
f += "Y";
}
}
else if(f == "X")
{
int t = press(f + "A"+ f + "BA" + f + "BB" + f + "BY");
if(t == (int)f.size())
{
f += "Y";
}
else if(t == (int)f.size() + 1)
{
f += "A";
}
else //if(t == s.size() + 2)
{
f += "B";
}
}
else //if(f == "Y")
{
int t = press(f + "A"+ f + "BA" + f + "BB" + f + "BX");
if(t == (int)f.size())
{
f += "X";
}
else if(t == (int)f.size() + 1)
{
f += "A";
}
else //if(t == s.size() + 2)
{
f += "B";
}
}
te = press(f + "AB");
if(te >= 1)
{
te = press(f + "A");
if(te == 1)
{
f = "A";
}
else
{
f = "B";
}
}
else
{
te = press(f + "X");
if(te == 1)
{
f = "X";
}
else
{
f = "Y";
}
}
return f;
}
int main()
{
return 0;
}