제출 #1142661

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

std::string guess_sequence(int N) {
    std::string S="";
    std::string p="";
    std::string f;
    int coins = press("AB");
    if(coins == 1){
        coins = press("A");
        if(coins ==1) S+="A";
        else S+="B";
    }else{
        coins = press("X");
        if(coins ==1) S+="X";
        else S+="Y";
    }
    f=S;
    
    for(int i=0;i<N-2){
        if(f=="A"){
            p = S+"B"+S+"XX"+S+"XY"+S+"XB";
            coins = press(p);
            if(coins == S.size()+1){
                S+="B";
            }else if(coins == S.size()+2){
                S+="X";
            }else{
                S+="Y"
            }  
        }
        
        if(f=="B"){
            p = S+"A"+S+"XX"+S+"XY"+S+"XA";
            coins = press(p);
            if(coins == S.size()+1){
                S+="A";
            }else if(coins == S.size()+2){
                S+="X";
            }else{
                S+="Y"
            }  
        }
        
        if(f=="X"){
            p = S+"B"+S+"AA"+S+"AY"+S+"AB";
            coins = press(p);
            if(coins == S.size()+1){
                S+="B";
            }else if(coins == S.size()+2){
                S+="A";
            }else{
                S+="Y"
            }  
        }
        
        if(f=="Y"){
            p = S+"B"+S+"XX"+S+"XA"+S+"XB";
            coins = press(p);
            if(coins == S.size()+1){
                S+="B";
            }else if(coins == S.size()+2){
                S+="X";
            }else{
                S+="A"
            }  
        }
    }
    
    if(f=="A"){
        p=S+"X";
        int coins = press(p);
        if(coins == s.size()+ 1){
            S+="X";
        }else{
            p=S+"Y"
            coins = press(p);
            if(coins ==s.size()+ 1) S+="Y";
            else S+="B";
        }
    }
        
    if(f=="B"){
        p=S+"X";
        int coins = press(p);
        if(coins == s.size()+ 1){
            S+="X";
        }else{
            p=S+"Y"
            coins = press(p);
            if(coins ==s.size()+ 1) S+="Y";
            else S+="A";
        }
    }
    
    if(f=="Y"){
        p=S+"X";
        int coins = press(p);
        if(coins == s.size()+ 1){
            S+="X";
        }else{
            p=S+"A"
            coins = press(p);
            if(coins ==s.size()+ 1) S+="A";
            else S+="B";
        }
    }
    
    if(f=="X"){
        p=S+"A";
        int coins = press(p);
        if(coins ==s.size()+ 1){
            S+="A";
        }else{
            p=S+"Y"
            coins = press(p);
            if(coins ==s.size()+ 1) S+="Y";
            else S+="B";
        }
    }
    
    return S;
}

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:19:22: error: expected ';' before ')' token
   19 |     for(int i=0;i<N-2){
      |                      ^
      |                      ;
combo.cpp:28:23: error: expected ';' before '}' token
   28 |                 S+="Y"
      |                       ^
      |                       ;
   29 |             }
      |             ~          
combo.cpp:40:23: error: expected ';' before '}' token
   40 |                 S+="Y"
      |                       ^
      |                       ;
   41 |             }
      |             ~          
combo.cpp:52:23: error: expected ';' before '}' token
   52 |                 S+="Y"
      |                       ^
      |                       ;
   53 |             }
      |             ~          
combo.cpp:64:23: error: expected ';' before '}' token
   64 |                 S+="A"
      |                       ^
      |                       ;
   65 |             }
      |             ~          
combo.cpp:72:21: error: 's' was not declared in this scope
   72 |         if(coins == s.size()+ 1){
      |                     ^
combo.cpp:75:20: error: expected ';' before 'coins'
   75 |             p=S+"Y"
      |                    ^
      |                    ;
   76 |             coins = press(p);
      |             ~~~~~   
combo.cpp:85:21: error: 's' was not declared in this scope
   85 |         if(coins == s.size()+ 1){
      |                     ^
combo.cpp:88:20: error: expected ';' before 'coins'
   88 |             p=S+"Y"
      |                    ^
      |                    ;
   89 |             coins = press(p);
      |             ~~~~~   
combo.cpp:98:21: error: 's' was not declared in this scope
   98 |         if(coins == s.size()+ 1){
      |                     ^
combo.cpp:101:20: error: expected ';' before 'coins'
  101 |             p=S+"A"
      |                    ^
      |                    ;
  102 |             coins = press(p);
      |             ~~~~~   
combo.cpp:111:20: error: 's' was not declared in this scope
  111 |         if(coins ==s.size()+ 1){
      |                    ^
combo.cpp:114:20: error: expected ';' before 'coins'
  114 |             p=S+"Y"
      |                    ^
      |                    ;
  115 |             coins = press(p);
      |             ~~~~~