Submission #1151676

#TimeUsernameProblemLanguageResultExecution timeMemory
1151676EsgeerCombo (IOI18_combo)C++20
5 / 100
0 ms408 KiB
#include <bits/stdc++.h>
#include "combo.h"
using namespace std;

string guess_sequence(int N) {
  // guess first character;
  string T;
  if(press("AB")) {
    if(press("A")) T = "A";
    else T = "B";
  } else {
    if(press("X")) T = "X";
    else T = "Y";
  }

  vector<char> ch;
  if(T != "A") ch.push_back('A');
  if(T != "B") ch.push_back('B');
  if(T != "X") ch.push_back('X');
  if(T != "Y") ch.push_back('Y');

  // guess n-2 characters;
  for(int i = 0; i < N-2; i++) {
    int r = press(T + ch[0] + T + ch[1] + ch[0] + T + ch[1] + ch[1] + T + ch[1] + ch[2]);
    if(r == T.length()) T.push_back(ch[2]);
    else if(r == T.length() + 1) T.push_back(ch[0]);
    else T.push_back(ch[1]);
  }

  // guess last characters
  if(press(T + ch[0]) == N) T.push_back(ch[0]);
  else if(press(T + ch[1]) == N) T.push_back(ch[1]);
  else T.push_back(ch[2]);

  return T;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...