# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
677112 | hello_there_123 | Combo (IOI18_combo) | C++17 | 0 ms | 0 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<bits/stdc++.h>
//#include "combo.h"
using namespace std;
string arr[4]={"A","B","X","Y"};
set<string>s;
string guess_sequence(int N){
string ans = "";
string start = "";
s.insert("A");
s.insert("B");
s.insert("X");
s.insert("Y");
for(int i=0;i<3;i++){
if(press(arr[i]) == 1){
start = arr[i];
break;
}
}
s.erase(start);
vector<string>v;
for(auto string:s) v.push_back(string);
if(start == "") start = "Y";
ans+=start;
for(int i=0;i<N-2;i++){
string tr = "";
tr+=ans;
tr+=v[0];
tr+=ans;
tr+=v[1];
tr+=v[0];
tr+=ans;
tr+=v[1];
tr+=v[1];
tr+=ans;
tr+=v[1];
tr+=v[2];
if(press(tr) == ans.length()){
ans+=v[2];
}
else if(press(tr) == ans.length()+1){
ans+=v[0];
}
else ans+=v[1];
}
if(press(ans+v[0]) == N) return ans+v[0];
if(press(ans+v[1]) == N) return ans+v[1];
return ans+v[2];
}