#include <bits/stdc++.h>
using namespace std;
//#define lalala ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
//#define int long long int
//#define N 500005
//#define big 100000000000000000
//#define endl "\n"
#define pb push_back
//#define p push
//#define f first
//#define s second
int press(string p);
/*int press(string p){
cout<<p<<endl;
int a;cin>>a;
return a;
}*/
char ilk(){
string bas="AB";
int deg=press(bas);
if(deg==0){
bas="X";
deg=press(bas);
if(deg)return 'X';
return 'Y';
}
bas="A";
deg=press(bas);
if(deg)return 'A';
return 'B';
}
string guess_sequence(int N){
char x=ilk();
string bas;
bas.pb(x);
string harf;
//cout<<bas<<endl;
if(x!='A')harf.pb('A');
if(x!='B')harf.pb('B');
if(x!='X')harf.pb('X');
if(x!='Y')harf.pb('Y');
if(bas.size()==N)return bas;
for(int i=2;i<=N-1;i++){
string yeni=bas;
yeni.pb(harf[0]);
for(auto u:bas)yeni.pb(u);
yeni.pb(harf[1]);
yeni.pb(harf[0]);
for(auto u:bas)yeni.pb(u);
yeni.pb(harf[1]);
yeni.pb(harf[1]);
for(auto u:bas)yeni.pb(u);
yeni.pb(harf[1]);
yeni.pb(harf[2]);
if(yeni.size()>4*N){
while(12){
int a=12;
}
}
int deg=press(yeni);
if(deg==i-1){
bas.pb(harf[2]);
}
else if(deg==i)bas.pb(harf[0]);
else bas.pb(harf[1]);
//cout<<bas<<endl;
}
string yeni=bas;
yeni.pb(harf[0]);
for(auto u:bas)yeni.pb(u);
yeni.pb(harf[1]);
if(yeni.size()>4*N){
while(12){
int a=12;
}
}
if(press(yeni)==N-1){
bas.pb(harf[2]);
return bas;
}
yeni=bas;
yeni.pb(harf[0]);
if(press(yeni)==N)bas.pb(harf[0]);
else bas.pb(harf[1]);
return bas;
}
/*signed main() {
//lalala;
int n;cin>>n;
string a=guess_sequence(n);
cout<<a<<endl;
}
*/
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |