제출 #500479

#제출 시각아이디문제언어결과실행 시간메모리
500479KhizriCombo (IOI18_combo)C++17
94 / 100
34 ms620 KiB
#include "combo.h" #include <bits/stdc++.h> using namespace std; string x="ABXY",y="ABXY"; int k=0; char ask(string ans,int n){ string p=""; p+=ans; p+=x[0]; for(int i=0;i<x.size();i++){ p+=ans; p+=x[1]; p+=x[i]; } int k=press(p); if(k==ans.size()+1){ return x[0]; } else if(k==ans.size()+2){ return x[1]; } else{ return x[2]; } } string guess_sequence(int n) { string ans=""; int l=0,r=x.size()-1; while(l<=r){ int m=(l+r)/2; string a=""; for(int i=l;i<=m;i++){ a+=x[i]; } if(press(a)){ r=m-1; } else{ l=m+1; } } ans+=x[r+1]; x.erase(x.begin()+r+1); for(int i=1;i<n-1;i++){ ans+=ask(ans,n); } l=0,r=x.size()-1; while(l<=r){ int m=(l+r)/2; string a=""; for(int i=l;i<=m;i++){ a+=ans; a+=x[i]; } if(press(a)>ans.size()){ r=m-1; } else{ l=m+1; } } ans+=x[r+1]; return ans; }

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

combo.cpp: In function 'char ask(std::string, int)':
combo.cpp:10:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   10 |     for(int i=0;i<x.size();i++){
      |                 ~^~~~~~~~~
combo.cpp:16:9: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   16 |     if(k==ans.size()+1){
      |        ~^~~~~~~~~~~~~~
combo.cpp:19:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   19 |     else if(k==ans.size()+2){
      |             ~^~~~~~~~~~~~~~
combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:56:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   56 |         if(press(a)>ans.size()){
      |            ~~~~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...