#include <vector>
#include <iostream>
#include <queue>
#include <set>
using namespace std;
int main() {
// priority_queue<int> q; // очередь с приоритетами (куча)
// // q.add(10);
// int x = 10;
// q.push(-x); // max --> min | O(logn)
// q.top(); // max по приоритету | O(logn)
set<int> s; // logn
s.insert(10);
*s.begin(); // min
*s.rbegin(); // max
s.erase(s.begin()); // удалить min
for (int x : s) // перебрать в порядке возрастания
;
}
void add(int x) {
a.push_back(x)
for (int i = a.size() - 1; i > 1 && a[i / 2] > a[i]; i /= 2)
swap(a[i / 2], a[i]);
}