Submission #1282231

#TimeUsernameProblemLanguageResultExecution timeMemory
1282231austinCombo (IOI18_combo)C++20
0 / 100
7 ms460 KiB
#include <bits/stdc++.h>
using namespace std;
int press(string p);
string guess_sequence(int n) {
  string s;
  if (press("AB") >= 1) {
    s = (press("A") >= 1) ? "A" : "B";
  } else {
    s = (press("X") >= 1) ? "X" : "Y";
  }
  vector<char> all = {'A','B','X','Y'};
  vector<char> rest;
  for (char ch : all) if (ch != s[0]) rest.push_back(ch);
  char a = rest[0], b = rest[1], c = rest[2];
  while ((int)s.size() < n - 1) { // on s'arrête avant la dernière
    string q = s + a + a + s + a + b;
    int r = press(q);
    if (r == (int)s.size()) {
      s.push_back(c);
    } else if (r == (int)s.size() + 1) {
      s.push_back(a);
    } else {
      s.push_back(b);
    }
  }
  if ((int)s.size() < n) {
    if (press(s + a) == n) s.push_back(a);
    else if (press(s + b) == n) s.push_back(b);
    else s.push_back(c);
  }
  return s;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...