답안 #918614

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
918614 2024-01-30T07:37:52 Z AtabayRajabli Password (RMI18_password) C++17
0 / 100
1 ms 344 KB
#include <bits/stdc++.h>
using namespace std;

int query(string s);

string guess(int n, int s)
{
    int comb[s][s] = {0};
    int freq[s] = {0};

    for(int i = 0; i < s; i++)
    {
        int l = 0, r = n;
        while(l <= r)
        {
        int mid = (l + r) / 2;
        string x = "";
        for(int j = 0; j < mid; j++)x += (char(i + 'a'));

        int sz = x.size();
        if(query(x) == sz)l = mid + 1;
        else r = mid - 1;
        }
        freq[i] = l - 1;
    }

    string ans = "";
    for(int i = 0; i < s; i++)
    {
        for(int j = 0; j < s; j++)
        {
        string x = "";
        x += char(i +'a');
        int cnt = freq[j];
        while(cnt--)x += char(j + 'a');

        comb[i][j] = x.size();
        }
    }

    for(int ind = 0; ind < n; ind++)
    {
        for(int i = 0; i < s; i++)
        {
            bool check = 1;
            for(int j = 0; j < s; j++)
            {
                if(comb[i][j] != freq[j] + 1)
                {
                check = 0;
                break;
                }
            }
            if(check)
            {
                ans += char(i + 'a');
                freq[i]--;
                break;
            }
        }
    }

    return ans;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Returned early from guess() after 61 queries.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 344 KB Returned early from guess() after 13 queries.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 0 ms 344 KB Time limit exceeded (wall clock)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Returned early from guess() after 61 queries.
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 344 KB Returned early from guess() after 61 queries.
2 Halted 0 ms 0 KB -