Submission #624329

#TimeUsernameProblemLanguageResultExecution timeMemory
624329speedyArdaCombo (IOI18_combo)C++14
5 / 100
1 ms208 KiB
#include "combo.h" #include "bits/stdc++.h" using namespace std; string letters[4] = {"A", "B", "X", "Y"}; /*int press(string p) { cout << p << "\n"; int num; cin >> num; return num; }*/ string guess_sequence(int N) { string res = ""; int forbidden = 0; for(int idx = 0; idx < 3; idx++) { string i = letters[idx]; int num = press(i); if(num == 1) { res = i; forbidden = idx; break; } } if(res.size() == 0) { res = "Y"; forbidden = 3; } string available[3]; for(int i = 0; i < 4; i++) { if(forbidden == i) continue; if(i < forbidden) available[i] = letters[i]; else available[i - 1] = letters[i]; } int last = 0; while(res.size() < N - 1) { string temp = ""; for(int i = 0; i <= 2; i++) { //if(res.size() + 1 == N && last != 0) //continue; temp += res + available[0] + available[i]; } //if(res.size() + 1 < N || (res.size() + 1 == N && last != 0)) temp += res + available[1]; int num = press(temp); if(num == res.size()) { res += available[2]; last = 2; } else if(num - 1 == res.size()) { res += available[1]; last = 1; } else { res += available[0]; last = 0; } } for(int i = 0; i < 2; i++) { int num = press(res + available[i]); if(num == N) { res += available[i]; break; } } if(res.size() < N) res += available[2]; return res; } /*int main() { string res = guess_sequence(5); cout << res << "\n"; }*/

Compilation message (stderr)

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:42:22: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   42 |     while(res.size() < N - 1)
      |           ~~~~~~~~~~~^~~~~~~
combo.cpp:54:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |         if(num == res.size()) {
      |            ~~~~^~~~~~~~~~~~~
combo.cpp:58:25: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   58 |         else if(num - 1 == res.size()) {
      |                 ~~~~~~~~^~~~~~~~~~~~~
combo.cpp:78:19: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   78 |     if(res.size() < N)
      |        ~~~~~~~~~~~^~~
combo.cpp:41:9: warning: variable 'last' set but not used [-Wunused-but-set-variable]
   41 |     int last = 0;
      |         ^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...