# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
488881 | 1ne | Combo (IOI18_combo) | C++14 | 31 ms | 616 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "combo.h"
#include<bits/stdc++.h>
using namespace std;
std::string guess_sequence(int n) {
string a,b,x,y;
a+='A';
b+='B';
x+='X';
y+='Y';
string c;
string s;
if (n==1){
if (press(a)==1){
s+='A';
}
else if (press(b)==1){
s+='B';
}
else if (press(x)==1){
s+='X';
}
else{
s+='Y';
}
return s;
}
else {
a = "AB";
x = "XY";
if (press(a)>=1){
a.pop_back();
if (press(a)==1){
s+=a;
c="BXY";
}
else{
s+=b;
c="AXY";
}
}
else{
x.pop_back();
if (press(x)>=1){
s+=x;
c="ABY";
}
else{
s+=y;
c="ABX";
}
}
}
for (int i = 1;i<n-1;++i){
string q;
int temp =0;
q+=s;
q+=c[0];
string t;
t+=s;
t+=c[1];
for (auto x:c){
t+=x;
q+=t;
t.pop_back();
}
temp = press(q);
if (temp == s.length()+1){
s+=c[0];
}
else if(temp==s.length()+2){
s+=c[1];
}
else s+=c[2];
}
int counts = 0;
for (auto x:c){
s+=x;
if (counts==2){
return s;
}
if (press(s)==n){
return s;
}
s.pop_back();
counts++;
}
return s;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |