#3739
Algorel a primit de la părinţi o sumă de bani, S, şi o plasă în care încap K grame de cafea. Algorel trebuie să meargă la piaţă şi să cumpere suficientă cafea încât să umple plasa. Pe de altă parte, părinţii nu îi cer înapoi restul. Dacă va reuşi să umple plasa, va putea păstra diferenţa de bani dintre suma primită S şi costul total al cafelei achiziţionate. Dacă nu va reuşi să umple plasa, atunci nu va rămâne cu niciun ban. Ajutaţi-l pe Algorel să rămână cu o sumă cât mai mare de bani, scriind un program care face acest calcul pe baza datelor corespunzătoare comercianţilor.
Olimpiada de Informatică 2014, etapa locală
| Problema | cafea | Operații I/O |
cafea.in/cafea.out
|
|---|---|---|---|
| Limita timp | 0.3 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #64408597 | Utilizator | |
| Fișier | cafea.cpp | Dimensiune | 1.43 KB |
| Data încărcării | 05 Mai 2026, 15:29 | Scor/rezultat | Eroare de compilare |
In file included from /usr/include/c++/13/bits/stl_algobase.h:71, from /usr/include/c++/13/string:51, from /usr/include/c++/13/bits/locale_classes.h:40, from /usr/include/c++/13/bits/ios_base.h:41, from /usr/include/c++/13/ios:44, from /usr/include/c++/13/ostream:40, from /usr/include/c++/13/iostream:41, from cafea.cpp:1: /usr/include/c++/13/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Iter_less_iter::operator()(_Iterator1, _Iterator2) const [with _Iterator1 = __gnu_cxx::__normal_iterator<Comerciant*, std::vector<Comerciant> >; _Iterator2 = __gnu_cxx::__normal_iterator<Comerciant*, std::vector<Comerciant> >]’: /usr/include/c++/13/bits/stl_algo.h:1819:14: required from ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1859:25: required from ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1950:31: required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:4861:18: required from ‘void std::sort(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >]’ cafea.cpp:29:14: required from here /usr/include/c++/13/bits/predefined_ops.h:45:23: error: no match for ‘operator<’ (operand types are ‘Comerciant’ and ‘Comerciant’) 45 | { return *__it1 < *__it2; } | ~~~~~~~^~~~~~~~ In file included from /usr/include/c++/13/string:48: /usr/include/c++/13/bits/stl_iterator.h:1250:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_IteratorL, _Container>&, const __normal_iterator<_IteratorR, _Container>&)’ 1250 | operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1250:5: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/predefined_ops.h:45:23: note: ‘Comerciant’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’ 45 | { return *__it1 < *__it2; } | ~~~~~~~^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1258:5: note: candidate: ‘template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_Iterator, _Container>&, const __normal_iterator<_Iterator, _Container>&)’ 1258 | operator<(const __normal_iterator<_Iterator, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1258:5: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/predefined_ops.h:45:23: note: ‘Comerciant’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’ 45 | { return *__it1 < *__it2; } | ~~~~~~~^~~~~~~~ /usr/include/c++/13/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Val_less_iter::operator()(_Value&, _Iterator) const [with _Value = Comerciant; _Iterator = __gnu_cxx::__normal_iterator<Comerciant*, std::vector<Comerciant> >]’: /usr/include/c++/13/bits/stl_algo.h:1799:20: required from ‘void std::__unguarded_linear_insert(_RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Val_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1827:36: required from ‘void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1859:25: required from ‘void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1950:31: required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:4861:18: required from ‘void std::sort(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >]’ cafea.cpp:29:14: required from here /usr/include/c++/13/bits/predefined_ops.h:98:22: error: no match for ‘operator<’ (operand types are ‘Comerciant’ and ‘Comerciant’) 98 | { return __val < *__it; } | ~~~~~~^~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1250:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_IteratorL, _Container>&, const __normal_iterator<_IteratorR, _Container>&)’ 1250 | operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1250:5: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/predefined_ops.h:98:22: note: ‘Comerciant’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’ 98 | { return __val < *__it; } | ~~~~~~^~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1258:5: note: candidate: ‘template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_Iterator, _Container>&, const __normal_iterator<_Iterator, _Container>&)’ 1258 | operator<(const __normal_iterator<_Iterator, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1258:5: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/predefined_ops.h:98:22: note: ‘Comerciant’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’ 98 | { return __val < *__it; } | ~~~~~~^~~~~~~ /usr/include/c++/13/bits/predefined_ops.h: In instantiation of ‘bool __gnu_cxx::__ops::_Iter_less_val::operator()(_Iterator, _Value&) const [with _Iterator = __gnu_cxx::__normal_iterator<Comerciant*, std::vector<Comerciant> >; _Value = Comerciant]’: /usr/include/c++/13/bits/stl_heap.h:140:48: required from ‘void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Distance = long int; _Tp = Comerciant; _Compare = __gnu_cxx::__ops::_Iter_less_val]’ /usr/include/c++/13/bits/stl_heap.h:247:23: required from ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Distance = long int; _Tp = Comerciant; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_heap.h:356:22: required from ‘void std::__make_heap(_RandomAccessIterator, _RandomAccessIterator, _Compare&) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1635:23: required from ‘void std::__heap_select(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1910:25: required from ‘void std::__partial_sort(_RandomAccessIterator, _RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1926:27: required from ‘void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Size = long int; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:1947:25: required from ‘void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >; _Compare = __gnu_cxx::__ops::_Iter_less_iter]’ /usr/include/c++/13/bits/stl_algo.h:4861:18: required from ‘void std::sort(_RAIter, _RAIter) [with _RAIter = __gnu_cxx::__normal_iterator<Comerciant*, vector<Comerciant> >]’ cafea.cpp:29:14: required from here /usr/include/c++/13/bits/predefined_ops.h:69:22: error: no match for ‘operator<’ (operand types are ‘Comerciant’ and ‘Comerciant’) 69 | { return *__it < __val; } | ~~~~~~^~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1250:5: note: candidate: ‘template<class _IteratorL, class _IteratorR, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_IteratorL, _Container>&, const __normal_iterator<_IteratorR, _Container>&)’ 1250 | operator<(const __normal_iterator<_IteratorL, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1250:5: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/predefined_ops.h:69:22: note: ‘Comerciant’ is not derived from ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’ 69 | { return *__it < __val; } | ~~~~~~^~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1258:5: note: candidate: ‘template<class _Iterator, class _Container> bool __gnu_cxx::operator<(const __normal_iterator<_Iterator, _Container>&, const __normal_iterator<_Iterator, _Container>&)’ 1258 | operator<(const __normal_iterator<_Iterator, _Container>& __lhs, | ^~~~~~~~ /usr/include/c++/13/bits/stl_iterator.h:1258:5: note: template argument deduction/substitution failed: /usr/include/c++/13/bits/predefined_ops.h:69:22: note: ‘Comerciant’ is not derived from ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’ 69 | { return *__it < __val; } | ~~~~~~^~~~~~~
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema cafea face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.