Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <algorithm>
- #include <list>
- using namespace std;
- typedef pair<string, int> grade;
- struct comparator{
- bool operator()(grade a, grade b){
- return(a.second > b.second);
- }
- };
- int main() {
- list<grade> gradeslist;
- gradeslist.push_back(make_pair("Michael", 58));
- gradeslist.push_back(make_pair("Elizabeth", 67));
- gradeslist.push_back(make_pair("Tommy", 74));
- gradeslist.push_back(make_pair("Bray", 84));
- gradeslist.push_back(make_pair("Sandman", 63));
- gradeslist.push_back(make_pair("Alexa", 74));
- gradeslist.push_back(make_pair("Remy", 95));
- make_heap(gradeslist.begin(), gradeslist.end(), comparator());
- while(!gradeslist.empty()){
- cout << gradeslist.front().first << " - ";
- cout << gradeslist.front().second << endl;
- pop_heap(gradeslist.begin(), gradeslist.end(), comparator());
- gradeslist.pop_back();
- }
- getchar();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement