fork(2) download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5.  
  6. auto cmp = [](auto& a , auto& b)
  7. {
  8. return a.first * a.second < b.first * b.second
  9. || (a.first * a.second == b.first * b.second && a.first < b.first);
  10. };
  11.  
  12. priority_queue<pair<int,int> , vector<pair<int,int>> , decltype(cmp)> p(cmp);
  13.  
  14. p.emplace(2 , 5);
  15. p.emplace(5 , 10);
  16. p.emplace(3 , 6);
  17. p.emplace(6 , 3);
  18.  
  19. while(!p.empty())
  20. {
  21. auto t = p.top();
  22. p.pop();
  23. cout << t.first << " " << t.second << endl;
  24. }
  25.  
  26. return 0;
  27. }
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
5 10
6 3
3 6
2 5