제출 #1174744

#제출 시각아이디문제언어결과실행 시간메모리
1174744PacybwoahHidden Sequence (info1cup18_hidden)C++20
100 / 100
53 ms416 KiB
#include<iostream> #include<vector> #include<algorithm> #include<utility> #include "grader.h" using namespace std; vector<int> findSequence(int N){ int n = N; vector<int> que; int a, b; for(int i = 0; i < (n + 1) / 2; i++){ que.push_back(0); } if(isSubsequence(que)) a = 0, b = 1; else a = 1, b = 0; vector<int>().swap(que); int sz = 0; for(int i = 0; i < n; i++){ que.push_back(b); if(!isSubsequence(que)){ sz = i; break; } } if(sz == 0) return vector<int>(n, a); // n - sz a, sz b vector<int> pre(sz + 1); for(int i = 1; i <= sz; i++){ vector<int>().swap(que); for(int j = 1; j <= i; j++) que.push_back(b); int sa = 0, pa = 0; while((int)que.size() <= n / 2){ que.push_back(a); if(!isSubsequence(que)){ break; } else sa++; } vector<int>().swap(que); int cur = 0; while(cur + sz - i + 1 <= n / 2){ cur++; vector<int>().swap(que); for(int j = 1; j <= cur; j++) que.push_back(a); for(int j = i; j <= sz; j++) que.push_back(b); if(!isSubsequence(que)) break; else pa++; } if(pa + sz - i + 1 <= n / 2) pre[i] = pa; else pre[i] = n - sz - sa; } int sum = sz; vector<int> ans; for(int i = sz; i > 0; i--) pre[i] = pre[i] - pre[i - 1]; for(int i = 1; i <= sz; i++){ for(int j = 1; j <= pre[i]; j++) ans.push_back(a); ans.push_back(b); sum += pre[i]; } for(int i = 1; i <= n - sum; i++) ans.push_back(a); return ans; } // g++ -std=c++17 -Wall -Wextra -Wshadow -fsanitize=undefined -fsanitize=address -o run grader.cpp sequence.cpp -g

컴파일 시 표준 에러 (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...