제출 #1319122

#제출 시각아이디문제언어결과실행 시간메모리
1319122hynmjHidden Sequence (info1cup18_hidden)C++20
34 / 100
2 ms448 KiB
#include <bits/stdc++.h>
#include "grader.h"

using namespace std;

vector<int> findSequence(int n)
{
    int l = -1, r = n + 1;
    auto chk = [&](int k)
    {
        vector<int> a(k, 0);
        return isSubsequence(a);
    };
    while (r - l > 1)
    {
        int mid = (r + l) / 2;

        chk(mid) ? (l = mid) : (r = mid);
    }
    int zeros = l, ones = n - l;
    int z = 0, o = 1;
    if (zeros == 0)
    {
        vector<int> ans(n, 1);
        return ans;
    }
    else if (ones == 0)
    {
        vector<int> ans(n, 0);
        return ans;
    }
    vector<int> sequence;
    vector<int> zleft(zeros, 0);
    for (int i = 0; i < n; i++)
    {
        sequence.push_back(1);
        vector<int> new_sequence(sequence.begin(), sequence.end());
        new_sequence.insert(new_sequence.end(), zleft.begin(), zleft.end());
        if (isSubsequence(new_sequence))
        {
            ones--;
            if (ones == 0)
            {
                sequence.insert(sequence.end(), zleft.begin(), zleft.end());
                return sequence;
            }
            continue;
        }
        else
        {
            sequence.pop_back();
            sequence.push_back(0);
            zleft.pop_back();
        }
    }
    return sequence;
}

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