Submission #1137371

#TimeUsernameProblemLanguageResultExecution timeMemory
1137371LeonidCukCombo (IOI18_combo)C++20
100 / 100
20 ms484 KiB
#include <bits/stdc++.h> #include "combo.h" using namespace std; void smeni(string&a,string&b) { for(int i=0;i<b.size();i++) { a.push_back(b[i]); } } string guess_sequence(int n) { int k; string res=""; string p="ABXY"; k=press("AB"); if(k>0) { k=press("A"); if(k==1) { res.push_back('A'); swap(p[0],p[3]); } else { res.push_back('B'); swap(p[1],p[3]); } } else { k=press("X"); if(k==1) { res.push_back('X'); swap(p[2],p[3]); } else res.push_back('Y'); } if(n==1)return res; string t1="",t2="",t3,t4; t1.push_back(p[1]); t2.push_back(p[2]); t3=t2; t4=t2; t2.push_back(p[0]); t3.push_back(p[2]); t4.push_back(p[1]); while(res.size()<n-1) { string t=res; smeni(t,t1); smeni(t,res); smeni(t,t2); smeni(t,res); smeni(t,t3); smeni(t,res); smeni(t,t4); k=press(t); res.push_back(p[k-res.size()]); } string t=res; t.push_back(p[0]); smeni(t,res); t.push_back(p[1]); k=press(t); if(k!=n) { res.push_back(p[2]); return res; } else { t=res; t.push_back(p[0]); k=press(t); if(k==n) { res.push_back(p[0]); } else res.push_back(p[1]); return res; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...