제출 #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
      |         ^~~~