#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 time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |