제출 #1251527

#제출 시각아이디문제언어결과실행 시간메모리
1251527thuhienne콤보 (IOI18_combo)C++20
0 / 100
0 ms408 KiB
#include <bits/stdc++.h>
#include "combo.h"

using namespace std;

char c[] = {'A','B','X','Y'};
vector <char> remain;

std::string guess_sequence(int n) {
	string res = "",pressing = "";
	int start = -1;
	for (start = 0;start < 3;start++) {
		res.push_back(c[start]);
		if (press(res) == 1) break;
		res.pop_back();
	}
	if (start == -1) {
		start = 3;
		res.push_back(c[3]);
	}
	if (n == 1) {
		return res;
	}
	for (int i = 0;i < 4;i++) if (i != start) remain.push_back(c[i]);
	for (int i = 2;i < n;i++) {
		char fi = remain[0],se = remain[1],th = remain[2];
		pressing = res + fi + res + se + fi + res + se + se + res + se + th;
		int d = press(pressing);
		if (d == i - 1) res.push_back(th);
		else if (d == i) res.push_back(fi);
		else res.push_back(se);
	}
	for (int i = 0;i < 2;i++) {
		res.push_back(remain[i]);
		if (press(res) == n) {
			return res;
		}
		res.pop_back();
	}
	res.push_back(remain[2]);
	return res;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...