Submission #203600

#TimeUsernameProblemLanguageResultExecution timeMemory
203600Tadiorn콤보 (IOI18_combo)C++14
0 / 100
2 ms220 KiB
#include <bits/stdc++.h>
#include "combo.h"


using namespace std;

/*int press(string looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooool);
{

}*/

string guess_sequence(int N)
{
    string f;
    int te = press("AB");
    if(te >= 1)
    {
        te = press("A");
        if(te == 1)
        {
            f = "A";
        }
        else
        {
            f = "B";
        }
    }
    else
    {
        te = press("X");
        if(te == 1)
        {
            f = "X";
        }
        else
        {
            f = "Y";
        }
    }

    if(f == "A")
    {
        for(int i = 1; i < N - 1; i++)
        {
            int t = press(f + "X"+ f + "YB" + f + "YX" + f + "YY");
            if(t == (int)f.size())
            {
                f += "B";
            }
            else if(t == (int)f.size() + 1)
            {
                f += "X";
            }
            else //if(t == s.size() + 2)
            {
                f += "Y";
            }
        }
    }
    else if(f == "B")
    {
        int t = press(f + "X"+ f + "YA" + f + "YX" + f + "YY");
        if(t == (int)f.size())
        {
            f += "A";
        }
        else if(t == (int)f.size() + 1)
        {
            f += "X";
        }
        else //if(t == s.size() + 2)
        {
            f += "Y";
        }
    }
    else if(f == "X")
    {
        int t = press(f + "A"+ f + "BA" + f + "BB" + f + "BY");
        if(t == (int)f.size())
        {
            f += "Y";
        }
        else if(t == (int)f.size() + 1)
        {
            f += "A";
        }
        else //if(t == s.size() + 2)
        {
            f += "B";
        }
    }
    else //if(f == "Y")
    {
        int t = press(f + "A"+ f + "BA" + f + "BB" + f + "BX");
        if(t == (int)f.size())
        {
            f += "X";
        }
        else if(t == (int)f.size() + 1)
        {
            f += "A";
        }
        else //if(t == s.size() + 2)
        {
            f += "B";
        }
    }

    te = press(f + "AB");
    if(te >= 1)
    {
        te = press(f + "A");
        if(te == 1)
        {
            f = "A";
        }
        else
        {
            f = "B";
        }
    }
    else
    {
        te = press(f + "X");
        if(te == 1)
        {
            f = "X";
        }
        else
        {
            f = "Y";
        }
    }

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