Submission #1029374

#TimeUsernameProblemLanguageResultExecution timeMemory
1029374XJP12Boxes with souvenirs (IOI15_boxes)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; typedef vector<int> vi; int delivery(int n, int k, int l, vi positions){ if(k==1){ int ans=0; for(int i=0; i<n; i++){ ans+=min(positions[i],n-positions[i])*2; } return ans; } if(k==n){ int x = lower_bound(positions.begin(), positions.end()) - positions.begin(); int y = upper_bound(positions.begin(), positions.end()) - positions.begin(); x--; int ans=0; ans+=x*2; ans+=(n-y)*2; ans=min(l, ans); return ans; } }

Compilation message (stderr)

boxes.cpp: In function 'int delivery(int, int, int, vi)':
boxes.cpp:13:57: error: no matching function for call to 'lower_bound(std::vector<int>::iterator, std::vector<int>::iterator)'
   13 |   int x = lower_bound(positions.begin(), positions.end()) - positions.begin();
      |                                                         ^
In file included from /usr/include/c++/10/bits/char_traits.h:39,
                 from /usr/include/c++/10/ios:40,
                 from /usr/include/c++/10/istream:38,
                 from /usr/include/c++/10/sstream:38,
                 from /usr/include/c++/10/complex:45,
                 from /usr/include/c++/10/ccomplex:39,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:54,
                 from boxes.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:1350:5: note: candidate: 'template<class _ForwardIterator, class _Tp> _ForwardIterator std::lower_bound(_ForwardIterator, _ForwardIterator, const _Tp&)'
 1350 |     lower_bound(_ForwardIterator __first, _ForwardIterator __last,
      |     ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algobase.h:1350:5: note:   template argument deduction/substitution failed:
boxes.cpp:13:57: note:   candidate expects 3 arguments, 2 provided
   13 |   int x = lower_bound(positions.begin(), positions.end()) - positions.begin();
      |                                                         ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from boxes.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:2031:5: note: candidate: 'template<class _FIter, class _Tp, class _Compare> _FIter std::lower_bound(_FIter, _FIter, const _Tp&, _Compare)'
 2031 |     lower_bound(_ForwardIterator __first, _ForwardIterator __last,
      |     ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algo.h:2031:5: note:   template argument deduction/substitution failed:
boxes.cpp:13:57: note:   candidate expects 4 arguments, 2 provided
   13 |   int x = lower_bound(positions.begin(), positions.end()) - positions.begin();
      |                                                         ^
boxes.cpp:14:57: error: no matching function for call to 'upper_bound(std::vector<int>::iterator, std::vector<int>::iterator)'
   14 |   int y = upper_bound(positions.begin(), positions.end()) - positions.begin();
      |                                                         ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from boxes.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:2087:5: note: candidate: 'template<class _FIter, class _Tp> _FIter std::upper_bound(_FIter, _FIter, const _Tp&)'
 2087 |     upper_bound(_ForwardIterator __first, _ForwardIterator __last,
      |     ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algo.h:2087:5: note:   template argument deduction/substitution failed:
boxes.cpp:14:57: note:   candidate expects 3 arguments, 2 provided
   14 |   int y = upper_bound(positions.begin(), positions.end()) - positions.begin();
      |                                                         ^
In file included from /usr/include/c++/10/algorithm:62,
                 from /usr/include/x86_64-linux-gnu/c++/10/bits/stdc++.h:65,
                 from boxes.cpp:1:
/usr/include/c++/10/bits/stl_algo.h:2118:5: note: candidate: 'template<class _FIter, class _Tp, class _Compare> _FIter std::upper_bound(_FIter, _FIter, const _Tp&, _Compare)'
 2118 |     upper_bound(_ForwardIterator __first, _ForwardIterator __last,
      |     ^~~~~~~~~~~
/usr/include/c++/10/bits/stl_algo.h:2118:5: note:   template argument deduction/substitution failed:
boxes.cpp:14:57: note:   candidate expects 4 arguments, 2 provided
   14 |   int y = upper_bound(positions.begin(), positions.end()) - positions.begin();
      |                                                         ^
boxes.cpp:22:1: warning: control reaches end of non-void function [-Wreturn-type]
   22 | }
      | ^