제출 #1215039

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

string guess_sequence(int n){
    string ans = "";
    int x = press("AB");
    if(x == 1){
        int y = press("A");
        if(y == 1){
            ans += 'A';
        }else{
            ans += 'B';
        }
    }else{
        int y = press("X");
        if(y == 1){
            ans += 'X';
        }else{
            ans += 'Y';
        }
    }

    char a, b, c;
    if(ans[0] == 'A') a = 'B', b = 'X', c = 'Y';
    if(ans[0] == 'B') a = 'A', b = 'X', c = 'Y';
    if(ans[0] == 'X') a = 'B', b = 'A', c = 'Y';
    if(ans[0] == 'Y') a = 'B', b = 'X', c = 'A';

    while(ans.size() <= n - 2){
        string s = ans;
        int N = ans.size();
        int y = press(s+a+a+s+a+b+s+a+c+s+c);
        if(y == N + 2) ans += a;
        else if(y == N + 1) ans += c;
        else if(y == N) ans += b;
    }

    int y = press(ans + a);
    if(y == n) ans += a;
    int k = press(ans + b);
    if(k == n) ans += b;
    if(ans.size() == n) return ans;
    ans += c;
    return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...