제출 #162501

#제출 시각아이디문제언어결과실행 시간메모리
162501abacaba콤보 (IOI18_combo)C++14
100 / 100
55 ms648 KiB
#include <iostream> #include <string> #include <unordered_map> #include <cstring> #include <chrono> #include <vector> #include <map> #include <random> #include <set> #include <algorithm> #include <math.h> #include <cstdio> #include <stdio.h> #include <assert.h> #include <queue> #include <bitset> #include <cstdlib> #include <deque> #include <cassert> #include <stack> #include "combo.h" using namespace std; string seq[4] = {"A", "B", "X", "Y"}; int n, let1 = 3; string guess_sequence(int N) { int a = press(seq[0] + seq[1]); int b = press(seq[1] + seq[2]); if(!a && !b) let1 = 3; else if(a && b) let1 = 1; else if(a && !b) let1 = 0; else let1 = 2; string s = seq[let1]; swap(seq[3], seq[let1]); if(N == 1) return s; for(int i = 2; i < N; ++i) { string now = s + seq[0]; for(int j = 0; j < 3; ++j) now += s + seq[1] + seq[j]; int p = press(now); if(p == s.size()) s += seq[2]; else if(p == s.size() + 1) s += seq[0]; else s += seq[1]; } for(int i = 0; i < 2; ++i) if(press(s + seq[i]) == N) return s + seq[i]; return s + seq[2]; }

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

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