#include <iostream>
#include <queue>
int main() {
std::priority_queue<std::pair<int, int>, std::vector<std::pair<int, int>>, std::greater<std::pair<int, int>>> minPriorityQueue;
// Example usage:
minPriorityQueue.push({3, 10});
minPriorityQueue.push({1, 5});
minPriorityQueue.push({2, 8});
while (!minPriorityQueue.empty()) {
std::pair<int, int> topElement = minPriorityQueue.top();
minPriorityQueue.pop();
std::cout << "Value: " << topElement.first << ", Priority: " << topElement.second << std::endl;
}
return 0;
}