题解 | #成绩排序#

成绩排序

https://www.nowcoder.com/practice/3f27a0a5a59643a8abf0140b9a8cf1f7

#include "iostream"
#include "map"
#include <utility>
#include<algorithm>
#include<vector>
using namespace std;
map<int, int>m;
typedef pair<int, int> PAIR;
int cmp(const PAIR& x, const PAIR& y)//针对PAIR的比较函数
{
    if (x.second == y.second)return x.first < y.first;
    return x.second < y.second;  //从小到大
}
int main()
{
    int n;
    cin >> n;
        int first; int second;
        for (int i = 0; i < n; ++i)
        {
            cin >> first >> second;
            m.insert(pair<int, int>(first, second));
        }
        vector<PAIR> vec(m.begin(), m.end());
        sort(vec.begin(), vec.end(), cmp);
        for (size_t i = 0; i != vec.size(); ++i) {  //输出
            cout << vec[i].first << " " << vec[i].second << endl;
        }
    return 0;
}

全部评论

相关推荐

听说改名字就能收到offer哈:Radis写错了兄弟
点赞 评论 收藏
分享
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务