| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 401969 | blue | A Difficult(y) Choice (BOI21_books) | C++17 | Compilation error | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "books.h"
#include <vector>
#include <algorithm>
using namespace std;
int n;
long long k;
long long a;
vector<long long> diff(100001);
vector<int> res;
long long curr_sum;
int L, R;
void res_search(int l, int books)
{
// cerr << "rs " << l << ' ' << books << '\n';
res.push_back(l);
curr_sum += diff[l];
if(books-1 == 0)
{
if(a <= curr_sum && curr_sum <= 2*a)
answer(res);
return;
}
for(int r = l+1; r <= R; r++)
res_search(r, books-1);
}
void binary_search(int l, int r)
{
// cerr << "bs " << l << ' ' << r << '\n';
if(l == r)
{
L = max(1, l-k+1);
R = min(n, r+k-1);
for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
diff[i] = skim(i);
res_search(L, k);
impossible();
}
else
{
int m = (l+r)/2 + 1;
if(k*skim(m) <= 2*a)
return binary_search(m, r);
else
return binary_search(l, m-1);
}
}
//books, choice size, limit, skim limit
void solve(int N, int K, long long A, int S)
{
n = N;
k = K;
a = A;
binary_search(1, N);
}
Compilation message (stderr)
books.cpp: In function 'void binary_search(int, int)':
books.cpp:45:25: error: no matching function for call to 'max(int, long long int)'
45 | L = max(1, l-k+1);
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:254:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)'
254 | max(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:254:5: note: template argument deduction/substitution failed:
books.cpp:45:25: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
45 | L = max(1, l-k+1);
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:300:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)'
300 | max(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:300:5: note: template argument deduction/substitution failed:
books.cpp:45:25: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
45 | L = max(1, l-k+1);
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3480:5: note: candidate: 'template<class _Tp> constexpr _Tp std::max(std::initializer_list<_Tp>)'
3480 | max(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3480:5: note: template argument deduction/substitution failed:
books.cpp:45:25: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
45 | L = max(1, l-k+1);
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3486:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::max(std::initializer_list<_Tp>, _Compare)'
3486 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3486:5: note: template argument deduction/substitution failed:
books.cpp:45:25: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
45 | L = max(1, l-k+1);
| ^
books.cpp:46:25: error: no matching function for call to 'min(int&, long long int)'
46 | R = min(n, r+k-1);
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
230 | min(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed:
books.cpp:46:25: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
46 | R = min(n, r+k-1);
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
278 | min(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed:
books.cpp:46:25: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
46 | R = min(n, r+k-1);
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)'
3468 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: template argument deduction/substitution failed:
books.cpp:46:25: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
46 | R = min(n, r+k-1);
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)'
3474 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: template argument deduction/substitution failed:
books.cpp:46:25: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
46 | R = min(n, r+k-1);
| ^
books.cpp:47:33: error: no matching function for call to 'max(int, long long int)'
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:254:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::max(const _Tp&, const _Tp&)'
254 | max(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:254:5: note: template argument deduction/substitution failed:
books.cpp:47:33: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:300:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)'
300 | max(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:300:5: note: template argument deduction/substitution failed:
books.cpp:47:33: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3480:5: note: candidate: 'template<class _Tp> constexpr _Tp std::max(std::initializer_list<_Tp>)'
3480 | max(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3480:5: note: template argument deduction/substitution failed:
books.cpp:47:33: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3486:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::max(std::initializer_list<_Tp>, _Compare)'
3486 | max(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3486:5: note: template argument deduction/substitution failed:
books.cpp:47:33: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
books.cpp:47:53: error: no matching function for call to 'min(int&, long long int)'
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:230:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)'
230 | min(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:230:5: note: template argument deduction/substitution failed:
books.cpp:47:53: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/vector:60,
from books.h:4,
from books.cpp:1:
/usr/include/c++/10/bits/stl_algobase.h:278:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)'
278 | min(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algobase.h:278:5: note: template argument deduction/substitution failed:
books.cpp:47:53: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'long long int')
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)'
3468 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3468:5: note: template argument deduction/substitution failed:
books.cpp:47:53: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^
In file included from /usr/include/c++/10/algorithm:62,
from books.cpp:3:
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)'
3474 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/10/bits/stl_algo.h:3474:5: note: template argument deduction/substitution failed:
books.cpp:47:53: note: mismatched types 'std::initializer_list<_Tp>' and 'int'
47 | for(int i = max(1, l-k+1); i <= min(n, r+k-1); i++)
| ^