pair实现priority

    xiaoxiao2021-03-25  183

    只需要自定义比较函数即可!

    #include<bits/stdc++.h> using namespace std; #define pii pair<int, int> class mycomparison { public: bool operator () (const pii &n1, const pii &n2) const { if(n1.first == n2.first) return n1.second > n2.second; return n1.first > n2.first; } }; int main() { priority_queue<pii, vector<pii>, mycomparison> q; q.push(pii(3, 4)); q.push(pii(5, 6)); q.push(pii(5, 4)); while(!q.empty()) { cout << q.top().first << " " << q.top().second << endl; q.pop(); } return 0; }

    转载请注明原文地址: https://ju.6miu.com/read-2863.html

    最新回复(0)