#1855
Heap
Se consideră o colecție de numere naturale, inițial vidă. Asupra ei se fac două tipuri de operații:
1 x
– valoarea x
se adaugă în colecție;2
– cea mai mare valoare din colecție se afișează, apoi se elimină din colecție.Dându-se un șir de m
operații, să se afișeze în ordine rezultatele operațiilor de tip 2
.
Problema | Heap | Operații I/O |
![]() heap.in /heap.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #42929456 | Utilizator | |
Fișier | heap.cpp | Dimensiune | 547 B |
Data încărcării | 22 Martie 2023, 21:25 | Scor / rezultat | Eroare de compilare |
heap.cpp:9:18: error: expected type-specifier before '(' token bool operator(int a, int b) ^ In file included from /usr/include/c++/4.8/bits/stl_algo.h:61:0, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from heap.cpp:1: /usr/include/c++/4.8/bits/stl_heap.h: In instantiation of 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = int; _Tp = int; _Compare = compare]': /usr/include/c++/4.8/bits/stl_heap.h:448:15: required from 'void std::make_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = compare]' /usr/include/c++/4.8/bits/stl_queue.h:411:48: required from 'std::priority_queue<_Tp, _Sequence, _Compare>::priority_queue(const _Compare&, _Sequence&&) [with _Tp = int; _Sequence = std::vector<int>; _Compare = compare]' heap.cpp:15:43: required from here /usr/include/c++/4.8/bits/stl_heap.h:313:40: error: no match for call to '(compare) (int&, int&)' *(__first + (__secondChild - 1)))) ^ /usr/include/c++/4.8/bits/stl_heap.h: In instantiation of 'void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Distance = int; _Tp = int; _Compare = compare]': /usr/include/c++/4.8/bits/stl_heap.h:222:58: required from 'void std::push_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = compare]' /usr/include/c++/4.8/bits/stl_queue.h:499:41: required from 'void std::priority_queue<_Tp, _Sequence, _Compare>::push(const value_type&) [with _Tp = int; _Sequence = std::vector<int>; _Compare = compare; std::priority_queue<_Tp, _Sequence, _Compare>::value_type = int]' heap.cpp:28:22: required from here /usr/include/c++/4.8/bits/stl_heap.h:183:47: error: no match for call to '(compare) (int&, int&)' && __comp(*(__first + __parent), __value)) ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Heap 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ă.