Submission #1248085

#TimeUsernameProblemLanguageResultExecution timeMemory
1248085exoworldgdCombo (IOI18_combo)C++20
0 / 100
6 ms512 KiB
#pragma GCC optimize("O3") #pragma GCC target("avx2,bmi,bmi2,popcnt,lzcnt") #include <bits/stdc++.h> #define exoworldgd cin.tie(0)->sync_with_stdio(0),cout.tie(0) using namespace std; int press(string s); const char c[] = {'A','B','X','Y'}; int ask(string s) {return press(s);} int ask1(string s) { int n = s.length(); return ask(s+c[0]) == n+1 ? 0 : ask(s+c[1]) == n+1 ? 1 : ask(s+c[2]) == n+1 ? 2 : 3; } string guess_sequence(int n) { string s = ""; if (n == 1) return string(1, c[ask1(s)]); int idx[4], id = ask1(s); iota(idx,idx+4,0), s += c[id], swap(idx[id],idx[3]); for (int i = 1; i < n-1; i++) { string temp = s + c[idx[0]] + s + c[idx[0]] + c[idx[1]] + s + c[idx[0]] + c[idx[2]]; int len = ask(temp); s += len == i+2 ? c[idx[1]] : len == i+1 ? c[idx[0]] : c[idx[2]]; } return n > 1 ? s + (ask(s + c[idx[0]]) == n ? c[idx[0]] : ask(s + c[idx[1]]) == n ? c[idx[1]] : c[idx[2]]) : s; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...