제출 #940668

#제출 시각아이디문제언어결과실행 시간메모리
940668Macker콤보 (IOI18_combo)C++17
5 / 100
1 ms596 KiB
#include "combo.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; typedef pair<int, int> pii; #define fi first #define se second #define all(v) v.begin(), v.end() #define FOR(i, n) for (int i = 0; i < n; i++) string guess_sequence(int N) { string s = ""; char fir; if(press("AB")){ if(press("A")) fir = 'A'; else fir = 'B'; } else{ if(press("X")) fir = 'X'; else fir = 'Y'; } string t("ABXY"); int x = t.find(fir); t.erase(x, 1); s.push_back(fir); FOR(i, N - 2){ string q; q.append(s); q.append({t[0], t[0]}); q.append(s); q.append({t[0], t[1]}); q.append(s); q.append({t[0], t[2]}); q.append(s); q.append({t[1]}); int a = press(q) - s.size(); if(a == 2) s.push_back(t[0]); else if(a == 1) s.push_back(t[1]); else s.push_back(t[2]); } s.push_back(t[0]); if(press(s) != s.size()){ s.pop_back(); s.push_back(t[1]); if(press(s) != s.size()){ s.pop_back(); s.push_back(t[2]); } } return s; }

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

combo.cpp: In function 'std::string guess_sequence(int)':
combo.cpp:48:17: 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(press(s) != s.size()){
      |        ~~~~~~~~~^~~~~~~~~~~
combo.cpp:51:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   51 |         if(press(s) != s.size()){
      |            ~~~~~~~~~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...