# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
321852 | Pety | Jelly Flavours (IOI20_jelly) | C++14 | 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 <bits/stdc++.h>
#include "jelly.h"
using namespace std;
int n, m, dp[2002][10002], dp2[2002][10002], mn[2002];
struct meh {
int a, b, i;
} obj[2002];
bool cmp (meh a, meh b) {
return a.a < b.a;
}
int find_maximum_unique(int x, int y, vector<int> a, vector<int> b) {
int n = a.size();
int ans = 0;
for (int i = 0; i < n; i++)
obj[i + 1] = {a[i], b[i], i};
sort(obj + 1, obj + n + 1);
for (int i = 0; i <= n; i++)
for (int j = 0; j <= x; j++)
dp[i][j] = 2e9;
dp[0][0] = 0;
for (int i = 1; i <= n; i++) {
mn[i] = 2e9;
for (int j = 0; j <= x;j++) {
dp[i][j] = dp[i - 1][j] + obj[i].b;
if (j >= obj[i].a)
dp[i][j] = min(dp[i][j], dp[i - 1][j - obj[i].a]);
mn[i] = min(mn[i], dp[i][j]);
}
}
for (int i = n; i >= 1; i--)
for (int j = 0; j <= y; j++)
dp2[i][j] = min(dp2[i + 1][j], (j >= obj[i].b ? dp2[i][j - obj[i].b] + 1 : 2e9));
for (int i = 0; i <= n; i++) {
int cst = y - mn[i];
if (cst > 0)
ans = max(ans, i + dp2[i + 1][cst]);
}
return ans;
}
Compilation message (stderr)
jelly.cpp: In function 'int find_maximum_unique(int, int, std::vector<int>, std::vector<int>)': jelly.cpp:37:85: error: no matching function for call to 'min(int&, double)' 37 | dp2[i][j] = min(dp2[i + 1][j], (j >= obj[i].b ? dp2[i][j - obj[i].b] + 1 : 2e9)); | ^ In file included from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_algobase.h:198:5: note: candidate: 'template<class _Tp> constexpr const _Tp& std::min(const _Tp&, const _Tp&)' 198 | min(const _Tp& __a, const _Tp& __b) | ^~~ /usr/include/c++/9/bits/stl_algobase.h:198:5: note: template argument deduction/substitution failed: jelly.cpp:37:85: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double') 37 | dp2[i][j] = min(dp2[i + 1][j], (j >= obj[i].b ? dp2[i][j - obj[i].b] + 1 : 2e9)); | ^ In file included from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_algobase.h:246:5: note: candidate: 'template<class _Tp, class _Compare> constexpr const _Tp& std::min(const _Tp&, const _Tp&, _Compare)' 246 | min(const _Tp& __a, const _Tp& __b, _Compare __comp) | ^~~ /usr/include/c++/9/bits/stl_algobase.h:246:5: note: template argument deduction/substitution failed: jelly.cpp:37:85: note: deduced conflicting types for parameter 'const _Tp' ('int' and 'double') 37 | dp2[i][j] = min(dp2[i + 1][j], (j >= obj[i].b ? dp2[i][j - obj[i].b] + 1 : 2e9)); | ^ In file included from /usr/include/c++/9/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:65, from jelly.cpp:1: /usr/include/c++/9/bits/stl_algo.h:3444:5: note: candidate: 'template<class _Tp> constexpr _Tp std::min(std::initializer_list<_Tp>)' 3444 | min(initializer_list<_Tp> __l) | ^~~ /usr/include/c++/9/bits/stl_algo.h:3444:5: note: template argument deduction/substitution failed: jelly.cpp:37:85: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 37 | dp2[i][j] = min(dp2[i + 1][j], (j >= obj[i].b ? dp2[i][j - obj[i].b] + 1 : 2e9)); | ^ In file included from /usr/include/c++/9/algorithm:62, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:65, from jelly.cpp:1: /usr/include/c++/9/bits/stl_algo.h:3450:5: note: candidate: 'template<class _Tp, class _Compare> constexpr _Tp std::min(std::initializer_list<_Tp>, _Compare)' 3450 | min(initializer_list<_Tp> __l, _Compare __comp) | ^~~ /usr/include/c++/9/bits/stl_algo.h:3450:5: note: template argument deduction/substitution failed: jelly.cpp:37:85: note: mismatched types 'std::initializer_list<_Tp>' and 'int' 37 | dp2[i][j] = min(dp2[i + 1][j], (j >= obj[i].b ? dp2[i][j - obj[i].b] + 1 : 2e9)); | ^ In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'constexpr bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = meh*; _Iterator2 = meh*]': /usr/include/c++/9/bits/stl_algo.h:81:17: required from 'void std::__move_median_to_first(_Iterator, _Iterator, _Iterator, _Iterator, _Compare) [with _Iterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1920:34: required from '_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1952:38: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = meh*; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1967:25: required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:4867:18: required from 'void std::sort(_RAIter, _RAIter) [with _RAIter = meh*]' jelly.cpp:21:28: required from here /usr/include/c++/9/bits/predefined_ops.h:43:23: error: no match for 'operator<' (operand types are 'meh' and 'meh') 43 | { return *__it1 < *__it2; } | ~~~~~~~^~~~~~~~ In file included from /usr/include/c++/9/bits/stl_algobase.h:67, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_iterator.h:915:5: note: candidate: 'template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __gnu_cxx::__normal_iterator<_IteratorL, _Container>&, const __gnu_cxx::__normal_iterator<_IteratorR, _Container>&)' 915 | operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/9/bits/stl_iterator.h:915:5: note: template argument deduction/substitution failed: In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/predefined_ops.h:43:23: note: 'meh' is not derived from 'const __gnu_cxx::__normal_iterator<_IteratorL, _Container>' 43 | { return *__it1 < *__it2; } | ~~~~~~~^~~~~~~~ In file included from /usr/include/c++/9/bits/stl_algobase.h:67, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_iterator.h:922:5: note: candidate: 'template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __gnu_cxx::__normal_iterator<_Iterator, _Container>&, const __gnu_cxx::__normal_iterator<_Iterator, _Container>&)' 922 | operator<(const __normal_iterator<_Iterator, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/9/bits/stl_iterator.h:922:5: note: template argument deduction/substitution failed: In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/predefined_ops.h:43:23: note: 'meh' is not derived from 'const __gnu_cxx::__normal_iterator<_Iterator, _Container>' 43 | { return *__it1 < *__it2; } | ~~~~~~~^~~~~~~~ /usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Val_less_iter::operator()(_Value&, _Iterator) const [with _Value = meh; _Iterator = meh*]': /usr/include/c++/9/bits/stl_algo.h:1827:20: required from 'void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Val_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1854:36: required from 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1884:25: required from 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1970:31: required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:4867:18: required from 'void std::sort(_RAIter, _RAIter) [with _RAIter = meh*]' jelly.cpp:21:28: required from here /usr/include/c++/9/bits/predefined_ops.h:90:22: error: no match for 'operator<' (operand types are 'meh' and 'meh') 90 | { return __val < *__it; } | ~~~~~~^~~~~~~ In file included from /usr/include/c++/9/bits/stl_algobase.h:67, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_iterator.h:915:5: note: candidate: 'template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __gnu_cxx::__normal_iterator<_IteratorL, _Container>&, const __gnu_cxx::__normal_iterator<_IteratorR, _Container>&)' 915 | operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/9/bits/stl_iterator.h:915:5: note: template argument deduction/substitution failed: In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/predefined_ops.h:90:22: note: 'meh' is not derived from 'const __gnu_cxx::__normal_iterator<_IteratorL, _Container>' 90 | { return __val < *__it; } | ~~~~~~^~~~~~~ In file included from /usr/include/c++/9/bits/stl_algobase.h:67, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_iterator.h:922:5: note: candidate: 'template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __gnu_cxx::__normal_iterator<_Iterator, _Container>&, const __gnu_cxx::__normal_iterator<_Iterator, _Container>&)' 922 | operator<(const __normal_iterator<_Iterator, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/9/bits/stl_iterator.h:922:5: note: template argument deduction/substitution failed: In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/predefined_ops.h:90:22: note: 'meh' is not derived from 'const __gnu_cxx::__normal_iterator<_Iterator, _Container>' 90 | { return __val < *__it; } | ~~~~~~^~~~~~~ /usr/include/c++/9/bits/predefined_ops.h: In instantiation of 'bool __gnu_cxx::__ops::_Iter_less_val::operator()(_Iterator, _Value&) const [with _Iterator = meh*; _Value = meh]': /usr/include/c++/9/bits/stl_heap.h:133:48: required from 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = meh*; _Distance = long int; _Tp = meh; _Compare = __gnu_cxx::__ops::_Iter_less_val]' /usr/include/c++/9/bits/stl_heap.h:237:23: required from 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = meh*; _Distance = long int; _Tp = meh; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_heap.h:342:22: required from 'void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1671:23: required from 'void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1932:25: required from 'void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1947:27: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = meh*; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:1967:25: required from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = meh*; _Compare = __gnu_cxx::__ops::_Iter_less_iter]' /usr/include/c++/9/bits/stl_algo.h:4867:18: required from 'void std::sort(_RAIter, _RAIter) [with _RAIter = meh*]' jelly.cpp:21:28: required from here /usr/include/c++/9/bits/predefined_ops.h:65:22: error: no match for 'operator<' (operand types are 'meh' and 'meh') 65 | { return *__it < __val; } | ~~~~~~^~~~~~~ In file included from /usr/include/c++/9/bits/stl_algobase.h:67, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_iterator.h:915:5: note: candidate: 'template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __gnu_cxx::__normal_iterator<_IteratorL, _Container>&, const __gnu_cxx::__normal_iterator<_IteratorR, _Container>&)' 915 | operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/9/bits/stl_iterator.h:915:5: note: template argument deduction/substitution failed: In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/predefined_ops.h:65:22: note: 'meh' is not derived from 'const __gnu_cxx::__normal_iterator<_IteratorL, _Container>' 65 | { return *__it < __val; } | ~~~~~~^~~~~~~ In file included from /usr/include/c++/9/bits/stl_algobase.h:67, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40, from /usr/include/c++/9/istream:38, from /usr/include/c++/9/sstream:38, from /usr/include/c++/9/complex:45, from /usr/include/c++/9/ccomplex:39, from /usr/include/x86_64-linux-gnu/c++/9/bits/stdc++.h:54, from jelly.cpp:1: /usr/include/c++/9/bits/stl_iterator.h:922:5: note: candidate: 'template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __gnu_cxx::__normal_iterator<_Iterator, _Container>&, const __gnu_cxx::__normal_iterator<_Iterator, _Container>&)' 922 | operator<(const __normal_iterator<_Iterator, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/9/bits/stl_iterator.h:922:5: note: template argument deduction/substitution failed: In file included from /usr/include/c++/9/bits/stl_algobase.h:71, from /usr/include/c++/9/bits/char_traits.h:39, from /usr/include/c++/9/ios:40,