Submission #869766

#TimeUsernameProblemLanguageResultExecution timeMemory
869766NinedesuCombo (IOI18_combo)C++14
5 / 100
1 ms344 KiB
#include "combo.h"
#include<bits/stdc++.h>
using namespace std;

int st,sti=1;
string t="ABXY";

string guess_sequence(int N) {
  string p = "AB";
  if(press(p)){
    p="A";
    if(press(p))p="A",st=0;
    else p="B",st=1;
  }
  else{
    p="X";
    if(press(p))p="X",st=2;
    else p="Y",st=3;
  }
  for(int i=1; i<N-1; i++){
    string q="";
    int x=0;
    if(x==st)x++;
    for(int j=0; j<4; j++){
      if(st==j)continue;
      q+=p+t[x]+t[j];
    }
    x++;
    if(x==st)x++;
    q+=p+t[x];
    x++;
    if(x==st)x++;
    int c=press(q);
    if(c==p.size()+2)p+=q[p.size()];
    else if(c==p.size()+1)p+=q[q.size()-1];
    else p+=t[x];
  }
  int cnt=0;
  for(int i=0; i<4; i++){
    if(i==st)continue;
    string q=p+t[i];
    if(cnt==2)return q;
    int c=press(q);
    cnt++;
    if(c==N)return q;
  }
 
  return p;
}

Compilation message (stderr)

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:34:9: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   34 |     if(c==p.size()+2)p+=q[p.size()];
      |        ~^~~~~~~~~~~~
combo.cpp:35:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |     else if(c==p.size()+1)p+=q[q.size()-1];
      |             ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...