how to create a min priority queue of pair of int, int

#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;
}