제출 #1356538

#제출 시각아이디문제언어결과실행 시간메모리
1356538raineyjCombo (IOI18_combo)C++20
0 / 100
0 ms344 KiB
#include "combo.h"
#include <bits/stdc++.h>
using namespace std;

string guess_sequence(int N) {
    string curr="";
    char first;
    string c="ABXY";
    if(press("AB")>=1)
    {
        if(press("A")==1)
        {
            curr+="A";
            first='A';
        }
        else
        {
            curr+="B";
            first='B';
        }
    }
    else
    {
        if(press("X")==1)
        {
            curr+="X";
            first='X';
        }
        else
        {
            curr+="Y";
            first='Y';
        }
    }
    string nfc="";
    for(int i=0; i<4; i++)
    {
        if(c[i]!=first) nfc.push_back(c[i]);
    }
    for(int i=1; i<N-1; i++)
    {
        int res=press(curr+nfc[0]+curr+nfc[1]+nfc[0]+curr+nfc[1]+nfc[1]+curr+nfc[1]+nfc[2]);
        if(res==i) curr+=nfc[2];
        else if(res==i+1) curr+=nfc[1];
        else curr+=nfc[0];        
    }
    if(press(curr+"A"+"B")==N)
    {
        if(press(curr+"A")==N) curr+="A";
        else curr+="B";
    }
    else
    {
        if(press(curr+"X")==N) curr+="X";
        else curr+="Y";
    }
    return curr;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...