Submission #1251533

#TimeUsernameProblemLanguageResultExecution timeMemory
1251533thuhienneCombo (IOI18_combo)C++20
100 / 100
7 ms548 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; if (press("XY") >= 1) { if (press("X") == 1) start = 2; else start = 3; } else { if (press("A") == 1) start = 0; else start = 1; } res.push_back(c[start]); 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...