Submission #1195788

#TimeUsernameProblemLanguageResultExecution timeMemory
1195788qs1Combo (IOI18_combo)C++20
100 / 100
8 ms484 KiB
#include "combo.h"
#include<bits/stdc++.h>
using namespace std;
#define lli long long int

std::string guess_sequence(int N) {
  vector<string>c;
  lli n=press("AB");
  if(n==0){
    n=press("X");
    if(n==0){
      c={"Y","A","B","X"};
    }
    else{
      c={"X","A","B","Y"};
    }
  }
  else{
    n=press("A");
    if(n==0){
      c={"B","A","Y","X"};
    }
    else{
      c={"A","X","B","Y"};
    }
  }
  string s=c[0];
  if(N==1)return s;
  for(lli i=1;i<N-1;i++){
    string t=s+c[1]+s+c[2]+c[1]+s+c[2]+c[2]+s+c[2]+c[3];
    n=press(t);
    if(n==i){
      s+=c[3];
    }
    else if(n==i+1){
      s+=c[1];
    }
    else{
      s+=c[2];
    }
  }
  if(press(s+c[1])==N){
    s+=c[1];
  }
  else if(press(s+c[2])==N){
    s+=c[2];
  }
  else{
    s+=c[3];
  }
  return s;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...