제출 #394356

#제출 시각아이디문제언어결과실행 시간메모리
394356iulia13콤보 (IOI18_combo)C++14
5 / 100
1 ms316 KiB
#include <iostream> #include "combo.h" using namespace std; char dani[4] = {'A', 'B', 'X', 'Y'}; string s; /*string S; string s; int N; int press(string p) { int len = p.length(); int coins = 0; for (int i = 0, j = 0; i < len; ++i) { if (j < N && S[j] == p[i]) { ++j; } else if (S[0] == p[i]) { j = 1; } else { j = 0; } coins = max(coins, j); } return coins; }*/ string guess_sequence(int n) { int i; if (press(s + dani[0] + dani[1]) > 0) { if (1 == press(s + dani[0])) { s += dani[0]; swap(dani[0], dani[3]); } else { s += dani[1]; swap(dani[1], dani[3]); } } else { if (1 == press(s + dani[2])) { s += dani[2]; swap(dani[2], dani[3]); } else s += dani[3]; } for (i = 2; i < n; i++) { int bebic = press(s + dani[0] + s + dani[1] + dani[0] + s + dani[1] + dani[2] + s + dani[1] + dani[1]); if (bebic == i - 1) s += dani[2]; else if (bebic == i) s += dani[0]; else s += dani[1]; } if (press(s + dani[0] + s + dani[1]) >= n) { if (n == press(s + dani[0])) s += dani[0]; else s += dani[1]; } else s += dani[2]; return s; }/* int main() { cin >> S; N = S.size(); cout << guess_sequence(N); return 0; }*/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...