제출 #1319748

#제출 시각아이디문제언어결과실행 시간메모리
1319748aaaaaaaaHidden Sequence (info1cup18_hidden)C++20
34 / 100
2 ms444 KiB
#include<bits/stdc++.h> #include "grader.h" using namespace std; vector < int > findSequence (int N) { vector < int > answer (N, 0); auto ask = [&](string str) -> int { vector<int> check; for(auto it : str) check.push_back(it - '0'); bool ok = isSubsequence(check); if(ok){ if((int) check.size() == N) { answer = check; return 2; } return 1; } return 0; }; int st = 1, en = N, ones = 0; while(st <= en){ int mid = st + (en - st) / 2; string all_ones(mid, '1'); int res = ask(all_ones); if(res == 0) { en = mid - 1; }else if(res == 2){ return answer; }else{ ones = mid; st = mid + 1; } } int zeros = N - ones; if(ones < zeros){ string ans(ones, '1'); for(int i = 0, j = 0; i <= (int) ans.size(); ++i, ++j){ string nans = ans; nans.insert(nans.begin() + j, '0'); int res = ask(nans); if(res == 2) { return answer; } if(res == 1){ --i; ans = nans; } } }else{ string ans(zeros, '0'); for(int i = 0, j = 0; i <= (int) ans.size(); ++i, ++j){ string nans = ans; nans.insert(nans.begin() + j, '1'); int res = ask(nans); if(res == 2) { return answer; } if(res == 1){ --i; ans = nans; } } } return {-1}; }

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

grader.cpp: In function 'int main()':
grader.cpp:28:26: warning: format '%d' expects argument of type 'int', but argument 3 has type 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wformat=]
   28 |     fprintf (fifo_out, "%d\n", ans.size ());
      |                         ~^     ~~~~~~~~~~~
      |                          |              |
      |                          int            std::vector<int>::size_type {aka long unsigned int}
      |                         %ld
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...