제출 #670667

#제출 시각아이디문제언어결과실행 시간메모리
670667Essa2006콤보 (IOI18_combo)C++14
컴파일 에러
0 ms0 KiB
#include<bits/stdc++.h>
#include "combo.h"
using namespace std;
#define ll long long 
#define endl '\n'
#define FF first
#define SS second
#define all(a) a.begin(), a.end()
#define mod (ll)(1000000007)

string ans="";
string guess_sequence(int n){
    string a="ABXY";
    char c;
    for(int i=0;i<4;i++){
        if(press(a[i]))
            ans.push_back(a[i]), c=a[i];
    }
    string b=a;
    a="";
    for(int i=0;i<4;i++){
        if(b[i]!=c)
            a.push_back(b[i]);
    }
    for(int i=1;i<n;i++){
        for(int j=0;j<3;j++){
            if(press(ans+b[j])==i+1){
                ans.push_back(b[j]);
                break;
            }
        }
    }
    return ans;
}

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:16:22: error: could not convert 'a.std::__cxx11::basic_string<char>::operator[](((std::__cxx11::basic_string<char>::size_type)i))' from '__gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type' {aka 'char'} to 'std::string' {aka 'std::__cxx11::basic_string<char>'}
   16 |         if(press(a[i]))
      |                      ^
      |                      |
      |                      __gnu_cxx::__alloc_traits<std::allocator<char>, char>::value_type {aka char}