Submission #140704

#TimeUsernameProblemLanguageResultExecution timeMemory
140704astoria콤보 (IOI18_combo)C++14
0 / 100
1 ms200 KiB
#include <bits/stdc++.h>
#include "combo.h"
using namespace std;

string guess_sequence(int N){
  if (N!=3) return "";
  string solved_string;
  int xy = press("XY");
  if (xy==1){
    if (press("X") >= 1){
      solved_string = "X";
    }
    else solved_string = "Y";
  }
  else{
    if (press("A") == 1){
      solved_string = "A";
    }
    else solved_string = "B";
  }
  string valids[3];
  if (solved_string=="A"){ valids[0] = "Y"; valids[1] = "B"; valids[2] = "X";}
  if (solved_string=="B"){ valids[0] = "A"; valids[1] = "X"; valids[2] = "Y";}
  if (solved_string!="X"){ valids[0] = "A"; valids[1] = "B"; valids[2] = "Y";}
  if (solved_string!="Y"){ valids[0] = "A"; valids[1] = "B"; valids[2] = "X";}
  
  for (int i=1; i<N-1; i++){
  	string newnew = solved_string + valids[0] + valids[1] + solved_string + valids[0] + valids[2] + solved_string + valids[0] + valids[0] + solved_string + valids[1];
    int p = press(newnew);
    if (p==i+2) solved_string+=valids[0];
    else if (p==i+1) solved_string+=valids[1];
    else solved_string+=valids[2];
  }
  string hi = solved_string+valids[0]; string ih = solved_string+valids[1];
  string ihhi = solved_string+valids[2];
  if (press(hi) == N) return hi;
  if (press(ih) == N) return ih;
  else return ihhi;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...