답안 #773323

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
773323 2023-07-04T21:41:42 Z TheSahib Password (RMI18_password) C++14
50 / 100
436 ms 464 KB
#include <bits/stdc++.h>
 
#define ll long long
#define pii pair<int, int>
 
using namespace std;
 
int query(string s);

string merge(string s1, string s2){
    int p = 0;
    string ans = s1;
    string z = "";
    for (int i = 0; i <= ans.size() && p < s2.size(); i++)
    {
        z = ans;
        z.insert(z.begin() + i, s2[p]);
        int b = query(z);
        if(b == z.size()){
            ans = z;
            p++;
            i -= 1;
        }
    }
    return ans;
}
 
string guess(int n, int s){
    vector<string> ss;
    for (int c = 'a'; c < 'a' + s; c++)
    {
        string a;
        for (int i = 0; i < n; i++)
        {
            a += c;
        }
        int b = query(a);
        a.erase(a.begin() + b, a.end());
        if(a.empty()) continue;
        ss.push_back(a);
    }
    while(ss.size() != 1){
        sort(ss.begin(), ss.end());
        string a = merge(ss[ss.size() - 1], ss[ss.size() - 2]);
        ss.pop_back();
        ss.pop_back();
        ss.push_back(a);
    }
    
    return ss[0];
}

Compilation message

password.cpp: In function 'std::string merge(std::string, std::string)':
password.cpp:14:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |     for (int i = 0; i <= ans.size() && p < s2.size(); i++)
      |                     ~~^~~~~~~~~~~~~
password.cpp:14:42: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |     for (int i = 0; i <= ans.size() && p < s2.size(); i++)
      |                                        ~~^~~~~~~~~~~
password.cpp:19:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |         if(b == z.size()){
      |            ~~^~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 208 KB Guessed the password with 87 queries.
2 Correct 2 ms 300 KB Guessed the password with 156 queries.
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 208 KB Guessed the password with 72 queries.
2 Correct 1 ms 208 KB Guessed the password with 144 queries.
3 Correct 2 ms 208 KB Guessed the password with 171 queries.
4 Correct 2 ms 208 KB Guessed the password with 297 queries.
# 결과 실행 시간 메모리 Grader output
1 Correct 69 ms 316 KB Guessed the password with 7694 queries.
2 Correct 106 ms 348 KB Guessed the password with 10769 queries.
3 Correct 87 ms 464 KB Guessed the password with 13893 queries.
4 Correct 142 ms 436 KB Guessed the password with 21660 queries.
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 208 KB Guessed the password with 87 queries.
2 Correct 2 ms 300 KB Guessed the password with 156 queries.
3 Correct 1 ms 208 KB Guessed the password with 72 queries.
4 Correct 1 ms 208 KB Guessed the password with 144 queries.
5 Correct 2 ms 208 KB Guessed the password with 171 queries.
6 Correct 2 ms 208 KB Guessed the password with 297 queries.
7 Correct 69 ms 316 KB Guessed the password with 7694 queries.
8 Correct 106 ms 348 KB Guessed the password with 10769 queries.
9 Correct 87 ms 464 KB Guessed the password with 13893 queries.
10 Correct 142 ms 436 KB Guessed the password with 21660 queries.
11 Correct 112 ms 436 KB Guessed the password with 14371 queries.
12 Correct 341 ms 328 KB Guessed the password with 42024 queries.
13 Correct 186 ms 360 KB Guessed the password with 26092 queries.
14 Incorrect 436 ms 344 KB Could not guess the password with 50000 queries.
15 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 208 KB Guessed the password with 87 queries.
2 Correct 2 ms 300 KB Guessed the password with 156 queries.
3 Correct 1 ms 208 KB Guessed the password with 72 queries.
4 Correct 1 ms 208 KB Guessed the password with 144 queries.
5 Correct 2 ms 208 KB Guessed the password with 171 queries.
6 Correct 2 ms 208 KB Guessed the password with 297 queries.
7 Correct 69 ms 316 KB Guessed the password with 7694 queries.
8 Correct 106 ms 348 KB Guessed the password with 10769 queries.
9 Correct 87 ms 464 KB Guessed the password with 13893 queries.
10 Correct 142 ms 436 KB Guessed the password with 21660 queries.
11 Correct 112 ms 436 KB Guessed the password with 14371 queries.
12 Correct 341 ms 328 KB Guessed the password with 42024 queries.
13 Correct 186 ms 360 KB Guessed the password with 26092 queries.
14 Incorrect 436 ms 344 KB Could not guess the password with 50000 queries.
15 Halted 0 ms 0 KB -