Cách đa năng hoá toán tử < , và những lợi ích của nó trong set,map.
Đề bài: https://codeforces.com/problemset/problem/608/A Code: #include < bits / stdc ++. h > using namespace std ; #define ll long long struct cap { ll tang , tg ; }; // bool tmp(cap a, cap b){ // if(a.tang==b.tang) return a.tg<b.tg; // else return a.tang>b.tang; // } bool operator < ( const cap & a , const cap & b ){ if ( a . tang == b . tang ) return a . tg < b . tg ; return a . tang > b . tang ; } int main (){ // freopen("input.txt","r",stdin); // freopen("output.txt","w",stdout); ll n , s ; set <cap> ss ; cin >> n >> s ; cap arr [ n ]; ll i ; for ( i = 0 ; i < n ; i ++){ cin >> arr [ i ]. tang >> arr [ i ]. tg ; ss . insert ( arr [ i ]); } // for(auto pp: ss){ // cout<<pp.tang<<" "<<pp.tg<<'\n'; // } sort ( arr , arr + n );