Borderou de evaluare (job #986748)

Utilizator gabrielinelusGabriel-Robert Inelus gabrielinelus Data 19 august 2013 14:48:27
Problema Algoritmul lui Dijkstra Status done
Runda Arhiva educationala Compilator cpp | Vezi sursa
Scor 0

Raport evaluator

Eroare de compilare: In file included from /usr/local/include/c++/4.8.0/queue:64:0, from user.cpp:5: /usr/local/include/c++/4.8.0/bits/stl_queue.h: In instantiation of ‘class std::priority_queue<std::pair<int, int>, std::vector<std::pair<int, int> >, std::greater<std::pair<int, int> >()>’: user.cpp:16:90: required from here /usr/local/include/c++/4.8.0/bits/stl_queue.h:388:18: error: field ‘std::priority_queue<std::pair<int, int>, std::vector<std::pair<int, int> >, std::greater<std::pair<int, int> >()>::comp’ invalidly declared function type _Compare comp; ^ user.cpp: In constructor ‘std::priority_queue<_Tp, _Sequence, _Compare>::priority_queue(const _Compare&, _Sequence&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<std::pair<int, int> >; _Compare = std::greater<std::pair<int, int> >()]’: user.cpp:16:90: error: value-initialization of function type ‘std::greater<std::pair<int, int> >()’ priority_queue< pair <int,int> , vector < pair <int,int> > , greater<pair<int, int> >()> Q; ^ user.cpp:16:90: note: when instantiating default argument for call to std::priority_queue<_Tp, _Sequence, _Compare>::priority_queue(const _Compare&, _Sequence&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<std::pair<int, int> >; _Compare = std::greater<std::pair<int, int> >()] In file included from /usr/local/include/c++/4.8.0/bits/stl_algo.h:61:0, from /usr/local/include/c++/4.8.0/algorithm:62, from user.cpp:1: /usr/local/include/c++/4.8.0/bits/stl_heap.h: In instantiation of ‘void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::pair<int, int>*, std::vector<std::pair<int, int> > >; _Distance = int; _Tp = std::pair<int, int>; _Compare = std::greater<std::pair<int, int> > (*)()]’: /usr/local/include/c++/4.8.0/bits/stl_heap.h:442:15: required from ‘void std::make_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<std::pair<int, int>*, std::vector<std::pair<int, int> > >; _Compare = std::greater<std::pair<int, int> > (*)()]’ /usr/local/include/c++/4.8.0/bits/stl_queue.h:411:48: required from ‘std::priority_queue<_Tp, _Sequence, _Compare>::priority_queue(const _Compare&, _Sequence&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<std::pair<int, int> >; _Compare = std::greater<std::pair<int, int> >()]’ user.cpp:16:90: required from here /usr/local/include/c++/4.8.0/bits/stl_heap.h:310:40: error: too many arguments to function *(__first + (__secondChild - 1)))) ^ /usr/local/include/c++/4.8.0/bits/stl_heap.h:309:4: error: could not convert ‘__comp()’ from ‘std::greater<std::pair<int, int> >’ to ‘bool’ if (__comp(*(__first + __secondChild), ^ /usr/local/include/c++/4.8.0/bits/stl_heap.h: In instantiation of ‘void std::__push_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<std::pair<int, int>*, std::vector<std::pair<int, int> > >; _Distance = int; _Tp = std::pair<int, int>; _Compare = std::greater<std::pair<int, int> > (*)()]’: /usr/local/include/c++/4.8.0/bits/stl_heap.h:222:58: required from ‘void std::push_heap(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<std::pair<int, int>*, std::vector<std::pair<int, int> > >; _Compare = std::greater<std::pair<int, int> > (*)()]’ /usr/local/include/c++/4.8.0/bits/stl_queue.h:507:41: required from ‘void std::priority_queue<_Tp, _Sequence, _Compare>::push(std::priority_queue<_Tp, _Sequence, _Compare>::value_type&&) [with _Tp = std::pair<int, int>; _Sequence = std::vector<std::pair<int, int> >; _Compare = std::greater<std::pair<int, int> >(); std::priority_queue<_Tp, _Sequence, _Compare>::value_type = std::pair<int, int>]’ user.cpp:30:55: required from here /usr/local/include/c++/4.8.0/bits/stl_heap.h:183:47: error: too many arguments to function && __comp(*(__first + __parent), __value)) ^ /usr/local/include/c++/4.8.0/bits/stl_heap.h:183:7: error: no match for ‘operator&&’ (operand types are ‘bool’ and ‘std::greater<std::pair<int, int> >’) && __comp(*(__first + __parent), __value)) ^ /usr/local/include/c++/4.8.0/bits/stl_heap.h:183:7: note: candidate is: /usr/local/include/c++/4.8.0/bits/stl_heap.h:183:7: note: operator&&(bool, bool) <built-in> /usr/local/include/c++/4.8.0/bits/stl_heap.h:183:7: note: no known conversion for argument 2 from ‘std::greater<std::pair<int, int> >’ to ‘bool’

Ceva nu functioneaza?