이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "combo.h"
#include<bits/stdc++.h>
using namespace std;
std::string guess_sequence(int n)
{
int ops = 0;
vector<string> cc{"A", "B", "X", "Y"};
string ans;
int a = press("AB");
if(a > 0)
{
int b = press("A");
if(b == 1)
ans += "A";
else
ans += "B";
}
else
{
int b = press("X");
if(b == 1)
ans += "X";
else
ans += "Y";
}
vector<string> controls;
for(int i=0;i<4;i++)
{
if(cc[i] != ans)
controls.push_back(cc[i]);
}
string cur;
if(n == 1)
return ans;
for(int i=1;i<n-1;i++)
{
// cout << ans << '\n';
cur = ans + controls[1] + ans + controls[0] + controls[0] + ans + controls[0] + controls[1] + ans + controls[0] + controls[2];
// cout << cur.size() << '\n';
ops++;
int len = press(cur);
if(len == i + 2)
ans += controls[0];
else if(len == i + 1)
ans += controls[1];
else
ans += controls[2];
}
// Since len(cur) > 4N
if(press(ans + controls[0]) == n)
ans += controls[0];
else if(press(ans + controls[1]) == n)
ans += controls[1];
else
ans += controls[2];
// cout << ops << '\n';
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |