Submission #1248089

#TimeUsernameProblemLanguageResultExecution timeMemory
1248089exoworldgdCombo (IOI18_combo)C++20
30 / 100
13 ms532 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(const string& s) { int len = ask(s+c[0]+s+c[1]), idx = 2*(len < s.length()+1); return len = ask(s+c[idx]), idx + (len < s.length()+1); } string guess_sequence(int n) { string s = ""; int idx[4]; iota(idx,idx+4,0); int id = ask1(s); s += c[id], swap(idx[id], idx[3]); for (int i = 0; i < n-2; i++) s += ask(s+c[idx[0]]+c[idx[0]]+s+c[idx[0]]+c[idx[1]]+s+c[idx[0]]+c[idx[2]]+s+c[idx[1]]) == i+3 ? c[idx[0]] : ask(s+c[idx[0]]+c[idx[0]]+s+c[idx[0]]+c[idx[1]]+s+c[idx[0]]+c[idx[2]]+s+c[idx[1]]) == i+2 ? c[idx[1]] : c[idx[2]]; return n > 1 ? s + c[ask1(s)] : s; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...