Submission #1238947

#TimeUsernameProblemLanguageResultExecution timeMemory
1238947yuichiro17Combo (IOI18_combo)C++20
0 / 100
0 ms420 KiB
#include "combo.h"
#include <bits/stdc++.h>
using namespace std;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

string guess_sequence(int n) {
  vector<char>m;
  string pref="";
  if(press("AB")>0){
    if(press("A")>0){
      pref="A";
      m={'B','X','Y'};
    }else{
      pref="B";
      m={'A','X','Y'};
    }
  }else{
    if(press("X")>0){
      pref="X";
      m={'A','B','Y'};
    }else{
      pref="Y";
      m={'A','B','X'};
    }
  }
  for(int i=1;i<n-1;i++){
    shuffle(m.begin(),m.end(),rng);
    int x=press(pref+m[0]+m[0]+pref+m[0]+m[1]+pref+m[0]+m[2]+pref+m[1]);
    if(x>i+1){
      pref+=m[0];
    }else if(x>i){
      pref+=m[1];
    }else{
      pref+=m[2];
    }
  }
  for(int i=0;i<3;i++){
    if(press(pref+m[i])==n){
      pref+=m[i];
      break;
    }
  }
  cout<<pref<<endl;
  return pref;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...