Submission #1351957

#TimeUsernameProblemLanguageResultExecution timeMemory
1351957KALARRYCombo (IOI18_combo)C++20
97 / 100
5 ms548 KiB
//chockolateman

#include<bits/stdc++.h>
#include "combo.h"

using namespace std;

char let[4] = {'A','B','X','Y'};

std::string guess_sequence(int N) 
{
    std::string ans = "";
    for(int i = 0 ; i <= 3 ; i++)
    {
        ans += let[i];
        int res = 1;
        if(i != 3)
            res = press(ans);
        if(res == 1)
        {
            swap(let[0],let[i]);
            break;
        }
        ans.pop_back();
    }
    string p;
    for(int i = 1 ; i <= N-2 ; i++)
    {
        p = ans + let[1] + ans + let[2] + let[1] + ans + let[2] + let[2] + ans + let[2] + let[3];
        int res = press(p);
        if(res==i)
            ans.push_back(let[3]);
        else if(res==i+1)
            ans.push_back(let[1]);
        else
            ans.push_back(let[2]);
    }
    if(N != 1)
    {
        for(int i = 1 ; i <= 3 ; i++)
        {
            ans += let[i];
            int res = N;
            if(i != 3)
                res = press(ans);
            if(res == N)
                break;
            ans.pop_back();
        }
    }
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...