Priority queue constructors
Syntax:
  #include <queue>
  priority_queue( const Compare& cmp = Compare(), const Container& c = Container() );
  priority_queue( input_iterator start, input_iterator end, const Compare& comp = Compare(), const Container& c = Container() );

Priority queues can be constructed with an optional compare function cmp and an optional container c. If start and end are specified, the priority queue will be constructed with the elements between start and end.