제출 #211571

#제출 시각아이디문제언어결과실행 시간메모리
211571Harry464콤보 (IOI18_combo)C++14
100 / 100
40 ms652 KiB
#include <iostream> #include <string> #include <cmath> #include "combo.h" using namespace std; string guess_sequence(int N) { char slovo[4]={'A','B','X','Y'}; int prvoSlovo, odgovor; string s; if(press("AB")) { if(press("A")) prvoSlovo=0; else prvoSlovo=1; } else { if(press("X")) prvoSlovo=2; else prvoSlovo=3; } s+=slovo[prvoSlovo]; if (s.size() == N) return s; for(int i=2;i<N;i++) { string t = s + slovo[(prvoSlovo+1)%4] + slovo[(prvoSlovo+1)%4] + s + slovo[(prvoSlovo+1)%4] + slovo[(prvoSlovo+2)%4] + s + slovo[(prvoSlovo+1)%4] + slovo[(prvoSlovo+3)%4] + s + slovo[(prvoSlovo+2)%4]; odgovor = press(t); int l = s.size(); if(odgovor == l+2) s += slovo[(prvoSlovo+1)%4]; else if(odgovor == l+1) s+=slovo[(prvoSlovo+2)%4]; else s+=slovo[(prvoSlovo+3)%4]; } int l = s.size(); if(press(s + slovo[(prvoSlovo+1)%4] + s + slovo[(prvoSlovo+2)%4])>l) { if(press(s+slovo[(prvoSlovo+1)%4])>l) s+=slovo[(prvoSlovo+1)%4]; else s+=slovo[(prvoSlovo+2)%4]; } else { s+=slovo[(prvoSlovo+3)%4]; } return s; }

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:25:16: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   25 |   if (s.size() == N)
      |       ~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...