제출 #933354

#제출 시각아이디문제언어결과실행 시간메모리
933354Aria_lix19콤보 (IOI18_combo)C++14
0 / 100
0 ms344 KiB
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <string>
#include <iostream>
#include <cstring>
#include <string>
#include <vector>
#include <math.h>
#include <cmath>
#include <iomanip>
#include <queue>
#include <cassert>
#include <numeric>
#include <map>
#include <climits>
#include <set>
int press(std::string p);

std::string guess_sequence(int N) {
    std::string p = "AB";
    char a, b, c;
    long long ruzz;
//    for (int i = 0; i < 4 * N; ++i) {
//        p += 'A';
//    }
    std::string s = "";
//    for (int i = 0; i < N; ++i) {
//        S += 'A';
//    }
//    return S;
    if(press(p) ==0){
        p='X';
        if(press(p)==0){
            s+='Y';
            a='A';
            b='B';
            c='X';        }
        else{
            s+='X';
            a='A';
            b='B';
            c='Y';
        }
    }
    else{
        p='A';
        if(press(p)==0){
            s+='B';
            a='A';
            b='X';
            c='Y';
        }
        else{
            s+='A';
            a='B';
            b='X';
            c='Y';
        }
    }
    for(int i = 1; i <N-1; i++){
        p=s+a+s+b+a+s+b+b+s+b+c;
        ruzz=s.size();
        if(press(p)==ruzz){
            s+=c;
        }
        else if(press(p)==ruzz+1){
            s+=a;
        }
        else
            s+=b;
    }
    p=s+a+s+b;
    ruzz=s.size();
    if(press(p)==ruzz+1){
        p=s+a;
        if(press(p)==1)
            s+=a;
        else
            s+=b;
    }
    else
        s+=c;
    
    return s;
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...