제출 #1142579

#제출 시각아이디문제언어결과실행 시간메모리
1142579amm_oux콤보 (IOI18_combo)C++20
97 / 100
7 ms532 KiB
#include "combo.h"



using namespace std;

 std::string guess_sequence(int N) {
  std::string p = "";

  string constr ="";
  
  int var ;

  std::string S = "";
  
  var = press("AB");
  
  if (var==2){constr+="A";}

       else  if(var>0){
    if (press("B")==1){constr+="B";}
    else {constr+="A";}
    
    }
        else{
    if(press("X")==1){constr+="X";}
    else{constr+="Y";}
        }

        if (press(constr)==N){return constr;}

    if (constr=="A"){

    for( int i = 1 ; i<N-1; i++ ){
    p=constr+"B"+constr+"X"+"X"+constr+"X"+"B"+constr+"X"+"Y";
    
    var = press(p);

    if (var==constr.size()+1){constr+="B";}
    else if (var==constr.size()+2){constr+="X";}
    else if (var==constr.size()){constr+="Y";}
    }
        if(press(constr+"B")==N){constr+="B";}
    else if (press(constr+"X")==N){constr+="X";}
    else {constr+="Y";}

        return constr ;
    }

    else if (constr=="B"){

    for( int i = 1 ; i<N-1; i++ ){
    p=constr+"A"+constr+"X"+"X"+constr+"X"+"A"+constr+"X"+"Y";
    
    var = press(p);

    if (var==constr.size()+1){constr+="A";}
    else if (var==constr.size()+2){constr+="X";}
    else if (var==constr.size()){constr+="Y";}
    }
        if(press(constr+"A")==N){constr+="A";}
    else if (press(constr+"X")==N){constr+="X";}
    else {constr+="Y";}

        return constr ;
    }
    
    else if (constr=="X"){

    for( int i = 1 ; i<N-1; i++ ){
    p=constr+"A"+constr+"B"+"B"+constr+"B"+"A"+constr+"B"+"Y";
    
    var = press(p);

    if (var==constr.size()+1){constr+="A";}
    else if (var==constr.size()+2){constr+="B";}
    else if (var==constr.size()){constr+="Y";}
    }
        if(press(constr+"A")==N){constr+="A";}
    else if (press(constr+"B")==N){constr+="B";}
    else {constr+="Y";}

        return constr ;
    }

    else if (constr=="Y"){

    for( int i = 1 ; i<N-1; i++ ){
    p=constr+"A"+constr+"X"+"X"+constr+"X"+"A"+constr+"X"+"B";
    
    var = press(p);

    if (var==constr.size()+1){constr+="A";}
    else if (var==constr.size()+2){constr+="X";}
    else if (var==constr.size()){constr+="B";}
    }
        if(press(constr+"A")==N){constr+="A";}
    else if (press(constr+"X")==N){constr+="X";}
    else {constr+="B";}

        return constr ;
    }
    }
    
    
  

컴파일 시 표준 에러 (stderr) 메시지

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:103:5: warning: control reaches end of non-void function [-Wreturn-type]
  103 |     }
      |     ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...