제출 #90809

#제출 시각아이디문제언어결과실행 시간메모리
90809tpoppo콤보 (IOI18_combo)C++14
30 / 100
70 ms448 KiB
#include<bits/stdc++.h>
#include "combo.h"

using namespace std;

int n;
string pref;
vector<char> valid ={'A','B','X','Y'};

void get_next(){

    if(press(pref + valid[0] + pref + valid[1]) == pref.size()+1){
        if(press(pref + valid[0]) == pref.size()+1){
            pref += valid[0];
        }else{
            pref += valid[1];
        }
    }else{
        pref += valid[2];
    }
}

string guess_sequence(int N) {
    n = N;
    if(press("AB")){
        if(press("A")){
            pref = "A";
            valid.erase(valid.begin());
        }else{
            pref = "B";
            valid.erase(valid.begin()+1);
        }
    }else{
        if(press("X")){
            pref = "X";
            valid.erase(valid.begin()+2);
        }else{
            pref = "Y";
            valid.erase(valid.begin()+3);
        }
    }
    for(int i=1;i<n;i++) get_next();

    return pref;
}

컴파일 시 표준 에러 (stderr) 메시지

combo.cpp: In function 'void get_next()':
combo.cpp:12:49: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   12 |     if(press(pref + valid[0] + pref + valid[1]) == pref.size()+1){
      |        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
combo.cpp:13:35: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   13 |         if(press(pref + valid[0]) == pref.size()+1){
      |            ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...