제출 #1323510

#제출 시각아이디문제언어결과실행 시간메모리
1323510k1r1t0Roller Coaster Railroad (IOI16_railroad)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>

using namespace std;
using ll = long long;
using vi = vector<int>;

const int N = 210000;

int n;
vector<array<int, 2>> a;

ll plan_roller_coaster(vi s, vi t) {
    n = s.size();
    for (int i = 0; i < n; i++)
        a.push_back({s[i], t[i]});
    vi val;
    sort(begin(a), end(a));
    for (int i = 0; i < n; i++) {
        int pos = lower_bound(begin(a), end(a), {a[i][1], 0}) - begin(a);
        val.push_back(n - pos - (a[i][1] <= a[i][0]));
    }
    sort(begin(val), end(val));
    for (int i = 0; i < n; i++)
        if (val[i] < i)
            return 1;
    return 0;
}





























#ifdef LOCAL

int main() {
    int n;
    assert(1 == scanf("%d", &n));
    std::vector<int> s(n), t(n);
    for (int i = 0; i < n; ++i)
        assert(2 == scanf("%d%d", &s[i], &t[i]));
    long long ans = plan_roller_coaster(s, t);
    printf("%lld\n", ans);
    return 0;
}

#endif

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

railroad.cpp: In function 'll plan_roller_coaster(vi, vi)':
railroad.cpp:19:30: error: no matching function for call to 'lower_bound(std::vector<std::array<int, 2> >::iterator, std::vector<std::array<int, 2> >::iterator, <brace-enclosed initializer list>)'
   19 |         int pos = lower_bound(begin(a), end(a), {a[i][1], 0}) - begin(a);
      |                   ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:60,
                 from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:51,
                 from railroad.cpp:1:
/usr/include/c++/13/bits/stl_algobase.h:1498:5: note: candidate: 'template<class _ForwardIterator, class _Tp> constexpr _ForwardIterator std::lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&)'
 1498 |     lower_bound(_ForwardIterator __first, _ForwardIterator __last,
      |     ^~~~~~~~~~~
/usr/include/c++/13/bits/stl_algobase.h:1498:5: note:   template argument deduction/substitution failed:
railroad.cpp:19:30: note:   couldn't deduce template parameter '_Tp'
   19 |         int pos = lower_bound(begin(a), end(a), {a[i][1], 0}) - begin(a);
      |                   ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/c++/13/algorithm:61:
/usr/include/c++/13/bits/stl_algo.h:2005:5: note: candidate: 'template<class _FIter, class _Tp, class _Compare> constexpr _FIter std::lower_bound(_FIter, _FIter, const _Tp&, _Compare)'
 2005 |     lower_bound(_ForwardIterator __first, _ForwardIterator __last,
      |     ^~~~~~~~~~~
/usr/include/c++/13/bits/stl_algo.h:2005:5: note:   template argument deduction/substitution failed:
railroad.cpp:19:30: note:   candidate expects 4 arguments, 3 provided
   19 |         int pos = lower_bound(begin(a), end(a), {a[i][1], 0}) - begin(a);
      |                   ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
railroad.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~
railroad_c.h:1:9: warning: #pragma once in main file
    1 | #pragma once
      |         ^~~~