#include <iostream>
#include <tuple>
#include <queue>
#include <random>

typedef std::tuple<int,int,int> trio;

int main()
{
    std::random_device rd;
    std::mt19937 rng(rd());
    std::uniform_int_distribution<> dist(1,5);
    
    std::priority_queue<trio> q;
    for (int i=0; i<20; ++i)
        q.push(trio(dist(rng), dist(rng), dist(rng)));
    
    while (!q.empty())
    {
        auto t = q.top();
        std::cout << std::get<0>(t) << ','
                  << std::get<1>(t) << ','
                  << std::get<2>(t) << '\n';
        q.pop();
    }
}