Submission #75009

#TimeUsernameProblemLanguageResultExecution timeMemory
75009RickMcCoyCombo (IOI18_combo)C++14
100 / 100
54 ms516 KiB
#include "combo.h" using namespace std; string guess_sequence(int n) { string a, c, d, e, f, g, h; int b = press("AB"), x; if(b >= 1) { b = press("A"); if(b == 1) a = "A"; else a = "B"; } else { b = press("X"); if(b == 1) a = "X"; else a = "Y"; } if(n == 1) return a; if(a == "A") c = f = "B", d = g = "X", e = h = "Y"; if(a == "B") c = f = "X", d = g = "Y", e = h = "A"; if(a == "X") c = f = "Y", d = g = "A", e = h = "B"; if(a == "Y") c = f = "A", d = g = "B", e = h = "X"; x = 1; for(int i=1;i<n-1;i++) { b = press(a+c+f+a+c+g+a+d+f); if(b == a.size()+c.size()) e = d+h, d = d+g, c = c+h; else if(b == a.size()+c.size()+1) e = d+f, d = c+g, c = c+f; else a+=e, c = f, d = g, e = h; } if(a.size() == n) return a; if(press(a+c+a+d)!=n) return a+e; if(press(a+c)!=n) return a+d; return a+c; }

Compilation message (stderr)

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:28:8: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   28 |   if(b == a.size()+c.size()) e = d+h, d = d+g, c = c+h;
      |      ~~^~~~~~~~~~~~~~~~~~~~
combo.cpp:29:13: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   29 |   else if(b == a.size()+c.size()+1) e = d+f, d = c+g, c = c+f;
      |           ~~^~~~~~~~~~~~~~~~~~~~~~
combo.cpp:32:14: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   32 |  if(a.size() == n) return a;
      |     ~~~~~~~~~^~~~
combo.cpp:6:23: warning: variable 'x' set but not used [-Wunused-but-set-variable]
    6 |  int b = press("AB"), x;
      |                       ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...