fork download
  1. #include <iostream>
  2. #include <tuple>
  3. #include <queue>
  4. #include <random>
  5.  
  6. typedef std::tuple<int,int,int> trio;
  7.  
  8. int main()
  9. {
  10. std::random_device rd;
  11. std::mt19937 rng(rd());
  12. std::uniform_int_distribution<> dist(1,5);
  13.  
  14. std::priority_queue<trio> q;
  15. for (int i=0; i<20; ++i)
  16. q.push(trio(dist(rng), dist(rng), dist(rng)));
  17.  
  18. while (!q.empty())
  19. {
  20. auto t = q.top();
  21. std::cout << std::get<0>(t) << ','
  22. << std::get<1>(t) << ','
  23. << std::get<2>(t) << '\n';
  24. q.pop();
  25. }
  26. }
Success #stdin #stdout 0s 3416KB
stdin
Standard input is empty
stdout
5,3,1
5,3,1
5,2,3
4,5,3
4,5,1
4,3,3
4,3,1
3,2,2
3,1,5
3,1,3
2,5,4
2,4,1
2,3,5
2,2,5
2,2,3
2,1,5
1,5,2
1,3,4
1,2,1
1,1,5