제출 #1315643

#제출 시각아이디문제언어결과실행 시간메모리
1315643vlomaczkPassword (RMI18_password)C++20
50 / 100
266 ms524 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> typedef long long ll; using namespace __gnu_pbds; using namespace std; template <typename T> using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>; int query(string str); int N; int getQ(string s) { if(s.size() > N) return N+20; return query(s); } string guess(int n, int S) { N=n; string alph = "abcdefghijklmnopqrstuvwxyz"; vector<int> vis(S); string res = "", stos=""; for(int i=res.size(); i>=0; --i) { int failed=0; for(int lit=0; lit<S; ++lit) { if(vis[lit]) { failed++; continue; } string old_res = res; stos = ""; for(int x=res.size()-1; x>=i; --x) { stos.push_back(res[x]); res.pop_back(); } reverse(stos.begin(), stos.end()); res.push_back(alph[lit]); res += stos; if(getQ(res)!=res.size()) { res = old_res; vis[lit] = 1; failed++; } else i++; } if(failed < S) { ++i; } else vis.assign(S,0); } return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...