제출 #1142597

#제출 시각아이디문제언어결과실행 시간메모리
1142597amm_oux콤보 (IOI18_combo)C++20
컴파일 에러
0 ms0 KiB
#include "combo.h"



using namespace std;

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

  string constr ="";
  
  int var ;
  
  var = press("AB");

    if (N==1){
    
    if(var == 1 ){
    if(press("B")==1)return "B";
    else return "A";
    }
    
    else if(press("X")==1)return "X";
    else return "Y";
    
    }
    else if (N==2){
    
    
    if(var == 1 ){construct += "B";}
    
    else if(var == 2 ){return "AB";}
    
    else {
    if(press("X")==1)construct+="X";
    else construct+="Y";
    }
    
    }
  
  
  else if (N>2){
  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:30:19: error: 'construct' was not declared in this scope; did you mean 'constr'?
   30 |     if(var == 1 ){construct += "B";}
      |                   ^~~~~~~~~
      |                   constr
combo.cpp:35:22: error: 'construct' was not declared in this scope; did you mean 'constr'?
   35 |     if(press("X")==1)construct+="X";
      |                      ^~~~~~~~~
      |                      constr
combo.cpp:36:10: error: 'construct' was not declared in this scope; did you mean 'constr'?
   36 |     else construct+="Y";
      |          ^~~~~~~~~
      |          constr
combo.cpp:129:5: warning: control reaches end of non-void function [-Wreturn-type]
  129 |     }
      |     ^