Submission #1342968

#TimeUsernameProblemLanguageResultExecution timeMemory
1342968curious_tiger콤보 (IOI18_combo)C++20
0 / 100
0 ms360 KiB
#include "combo.h"
#include<bits/stdc++.h>
using namespace std;
#define ll long long

string guess_sequence(int N) {
  
  string s;

  // first character
  if (press("AB")==1) {
    if (press("A")==1) s = "A";
    else s = "B";
  }
  else {
    if (press("X")==1) s = "X";
    else s = "Y";
  }
  if (N==1)
    return s;
  char first = s[0];

  // all other characters except the last
  
  char zero, one, two;
  if (first=='A')
    two = 'B', one = 'X', zero = 'Y';
  else if (first=='B')
    two = 'A', one = 'X', zero = 'Y';
  else if (first=='X')
    two = 'A', one = 'B', zero = 'Y';
  else
    two = 'A', one = 'B', zero = 'X';

  string p;
  int score;
  for (int c=1; c<N-1; c++) {
    p = s + two + two + s + two + one + s + two + zero + s + one;
    score = press(p);
    if (score==c+2)
      s += two;
    else if (score==c+1)
      s += one;
    else
      s += zero;
  }

  // last character
  if (press(s+two+s+one)==N) {
    if (press(s+two)==N)
      s += two;
    else
      s += one;
  }
  else
    s += zero;

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