제출 #1327703

#제출 시각아이디문제언어결과실행 시간메모리
1327703poapaa.콤보 (IOI18_combo)C++20
100 / 100
8 ms540 KiB
#include <bits/stdc++.h>
#include "combo.h"

using namespace std;

string p, ans, s;

string guess_sequence( int n ) {
    int scor;
    string chars = "ABXY";

    if( press("AB") ) {
        if( press("A") )
            ans = "A";
        else
            ans = "B";
    } else {
        if( press("X") )
            ans = "X";
        else
            ans = "Y";
    }

    if( n == 1 )
        return ans;

    s = "";
    for( char c : chars )
        if( c != ans[0] )
            s += c;

    for( int i = 1; i < n - 1; i++ ) {
        p = ans + s[0] + s[0] + ans + s[0] + s[1] + ans + s[0] + s[2] + ans + s[1];
        scor = press(p);

        if( scor == ans.size() + 2 )
            ans += s[0];
        else if( scor == ans.size() + 1 )
            ans += s[1];
        else
            ans += s[2];
    }

    if( press( ans + s[0] ) == n )
        ans += s[0];
    else {
        if( press( ans + s[1] ) == n )
            ans += s[1];
        else
            ans += s[2];
    }

    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...