ei1333の日記

ぺこい

消せない priority queue で消し過ぎない方法

消せる priority queue で消し過ぎない方法 - noshi91のメモ

消せない priority_queue

実装例

template< typename T >
struct PriorityQueue {
  T ret;
  size_t sz;
  PriorityQueue() : sz(0) {}
  void push(T x) {
    if(sz == 0 or ret < x) ret = x;
    sz++;
  }
  T top() const {
    assert (sz > 0);
    return ret;
  }
  bool empty() const {
    return sz == 0;
  }
  size_t size() const {
    return sz;
  }
};

消しすぎない方法

消せません