# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1002425 | zh_h | 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>
#define lint long long
#define pb push_back
#define mp make_pair
using namespace std;
// int press(string p){
// int temp;
// cin >> temp;
// return temp;
// }
string guess_sequence(int n){
string one, two, three;
string ans;
//* find first letter
if(press("AB") == 1){
if(press("B") == 1){ans = "B"; one = "A"; two = "X"; three = "Y";}
else{ans = "A"; one = "B"; two = "X"; three = "Y";}
if(press("X") == 1){ans = "X"; one = "A"; two = "B"; three = "Y";}
else{ans = "Y"; one = "A"; two = "B"; three = "X";}
}
int cur = 1;
while(cur < n-1){
int temp = press(ans+one + ans+two+one + ans+two+two + ans+two+three);
if(temp == cur){ans+=three;}
else if(temp == cur+1){ans+=one;}
else{ans+=two;}
cur++;
}
if(press(ans+one + ans+two) == n){
if(press(ans+one) == n){return ans+one;}
else return ans+two;
}
else return ans+three;
}
// int main() {
// ios_base::sync_with_stdio(false);
// cin.tie(NULL);
// return 0;
// }