제출 #256919

#제출 시각아이디문제언어결과실행 시간메모리
256919lani1akeaCombo (IOI18_combo)C++17
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>
#include "combo.h"

using namespace std;

string guess_sequence(int N) {
  int x;
  string s;
  char ch[] = {'A', 'B', 'X', 'Y'};
  if ( press("AB") >= 1) x = press("A") != 1;
  else x = 2 + (press('X') < 1);
  s += ch[x];
  if (N == 1) return s;
  swap(ch[x], ch[3]);
  for (int i = 1; i < N - 1; ++i) {
    x = press(s + ch[0] + ch[0] + s + c[0] + c[1] + s + ch[0] + ch[2] + s + ch[1]);
    if ( x == i + 2) s += ch[0];
    else if ( x == i + 1) s += ch[1];
    else s += ch[2];
  }
  if (press(s + ch[0] + s + ch[1]) == N) {
    if (press(s + ch[0]) == N) s += ch[0];
    else s += ch[1];
  } else s += ch[1];

  return s;
}

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:11:23: error: could not convert ''X'' from 'char' to 'std::string' {aka 'std::__cxx11::basic_string<char>'}
   11 |   else x = 2 + (press('X') < 1);
      |                       ^~~
      |                       |
      |                       char
combo.cpp:16:39: error: 'c' was not declared in this scope
   16 |     x = press(s + ch[0] + ch[0] + s + c[0] + c[1] + s + ch[0] + ch[2] + s + ch[1]);
      |                                       ^