#include <iostream>
#include <cmath>
#include <algorithm>
#include <string>
#include <vector>
#include <map>
#include <unordered_map>
#include <queue>
#include <set>
#include <unordered_set>
#include <complex>
#include <list>
#include <chrono>
#include <random>
#include <stack>
#include <iomanip>
#include <fstream>
using namespace std;
#define endl "\n"
// #define int long long
const int INF = 2 * 1e5 + 5;
const int MOD = 1e9 + 7;
int query(string s);
string guess(int n, int s){
map<char, int> a;
for(char i = 0; i < s; i++){
string s1 = string(n, i+'a');
a[i+'a'] = query(s1);
}
string sol = "";
for(int i = 0; i < n; i++){
char prev;
for(auto &j : a){
if(j.second != 0){
prev = j.first;
break;
}
}
for(auto &j : a){
if(prev == j.first || j.second == 0) continue;
if(query(j.first + string(a[prev], prev)) == a[prev] + 1){
prev = j.first;
}
}
a[prev]--;
sol+=prev;
}
return sol;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
336 KB |
Guessed the password with 121 queries. |
2 |
Correct |
7 ms |
336 KB |
Guessed the password with 277 queries. |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
1 ms |
336 KB |
Returned early from guess() after 29 queries. |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
143 ms |
436 KB |
Returned early from guess() after 7231 queries. |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
336 KB |
Guessed the password with 121 queries. |
2 |
Correct |
7 ms |
336 KB |
Guessed the password with 277 queries. |
3 |
Incorrect |
1 ms |
336 KB |
Returned early from guess() after 29 queries. |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
336 KB |
Guessed the password with 121 queries. |
2 |
Correct |
7 ms |
336 KB |
Guessed the password with 277 queries. |
3 |
Incorrect |
1 ms |
336 KB |
Returned early from guess() after 29 queries. |
4 |
Halted |
0 ms |
0 KB |
- |