제출 #1185542

#제출 시각아이디문제언어결과실행 시간메모리
1185542orgiloogiiCombo (IOI18_combo)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; int press(string p); string guess_sequence(int N) { string p = ""; string ans = ""; for (int i = 0; i < N; ++i) { p += 'A'; } int coins = press(p); char v0; if (coins) { ans += 'A'; v0 = 'A'; } else { for (int i = 0; i < N; ++i) { p += 'B'; } coins = press(p); if (coins) { ans += 'B'; v0 = 'B'; } else { for (int i = 0; i < N; ++i) { p += 'X'; } coins = press(p); if (coins) { ans += 'X'; v0 = 'X'; } else { ans += 'Y'; v0 = 'Y'; } } } while (ans.size() < N - 1) { p.clear(); if (v0 == 'A') p = ans + "B" + "X" + ans + "B" + "Y" + ans + "B" + "B" + ans + "X"; if (v0 == 'B') p = ans + "A" + "X" + ans + "A" + "Y" + ans + "A" + "A" + ans + "X"; if (v0 == 'X') p = ans + "A" + "Y" + ans + "A" + "B" + ans + "A" + "A" + ans + "Y"; if (v0 == 'Y') p = ans + "A" + "X" + ans + "A" + "B" + ans + "A" + "A" + ans + "X"; int coins = press(p); if (coins == 3) { if (v0 == 'A') ans += 'B'; if (v0 == 'B') ans += 'A'; if (v0 == 'X') ans += 'A'; if (v0 == 'Y') ans += 'A'; } else if (coins == 2) { if (v0 == 'A') ans += 'X'; if (v0 == 'B') ans += 'X'; if (v0 == 'X') ans += 'Y'; if (v0 == 'Y') ans += 'X'; } else { if (v0 == 'A') ans += 'Y'; if (v0 == 'B') ans += 'Y'; if (v0 == 'X') ans += 'B'; if (v0 == 'Y') ans += 'Y'; } } if (v0 == 'A') { if (press(ans + 'B') == n) { return ans + 'B'; } else if (press(ans + 'X') == n) { return ans + 'X'; } return ans + 'Y'; } if (v0 == 'B') { if (press(ans + 'A') == n) { return ans + 'A'; } else if (press(ans + 'X') == n) { return ans + 'X'; } return ans + 'Y'; } if (v0 == 'X') { if (press(ans + 'B') == n) { return ans + 'B'; } else if (press(ans + 'A') == n) { return ans + 'A'; } return ans + 'Y'; } if (v0 == 'Y') { if (press(ans + 'B') == n) { return ans + 'B'; } else if (press(ans + 'X') == n) { return ans + 'X'; } return ans + 'A'; } return ans; }

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:68:41: error: 'n' was not declared in this scope
   68 |                 if (press(ans + 'B') == n) {
      |                                         ^
combo.cpp:77:41: error: 'n' was not declared in this scope
   77 |                 if (press(ans + 'A') == n) {
      |                                         ^
combo.cpp:86:41: error: 'n' was not declared in this scope
   86 |                 if (press(ans + 'B') == n) {
      |                                         ^
combo.cpp:95:41: error: 'n' was not declared in this scope
   95 |                 if (press(ans + 'B') == n) {
      |                                         ^