제출 #433585

#제출 시각아이디문제언어결과실행 시간메모리
433585ApiramCombo (IOI18_combo)C++14
0 / 100
94 ms200 KiB
#include<bits/stdc++.h>
#include "combo.h"
using namespace std;
std::string guess_sequence(int N) {
  int counts=0;
  string p;
  string k = "ABXY";
  for (int i =0;i<4;++i){
    if (press(p+k[i])>counts){
      counts++;
      p+=k[i];
      k.erase(i,1);
      break;
    }
  }
  set<string>pos;
  for (int i =0;i<3;++i){
    for (int j =0;j<3;++j){
      for (int l =0;l<3;++l){
        string b;
        b+=k[i];
        b+=k[j];
        b+=k[l];
        pos.insert(b);
      }
    }
  }
  while(p.length()<N-4){
  for (auto c:pos){
    int cost =press(p+c);
   if (cost-counts==3){
      counts+=3;
      p+=c[0];
      p+=c[1];
      p+=c[2];
      break;
    }
  }
  }
    while(p.length()<N){
  for (auto c:k)
  if (press(p+c)>counts){
    counts++;
    p+=c;
    break;
  }
  }
  return p;
}

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:28:19: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   28 |   while(p.length()<N-4){
      |         ~~~~~~~~~~^~~~
combo.cpp:40:21: warning: comparison of integer expressions of different signedness: 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   40 |     while(p.length()<N){
      |           ~~~~~~~~~~^~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...